Python 如何按日期对列表进行升序排序?
我有一个由两部分组成的子列表:Python 如何按日期对列表进行升序排序?,python,list,sorting,date,Python,List,Sorting,Date,我有一个由两部分组成的子列表: my_list = [["10/15/2018", "John"], ["10/12/2019", "Beth"], ["9/15/2018", "Cory"]] 我需要列表按日期升序排序,并逐行打印 我知道list.sort()不能生成正确的顺序。我尝试使用datetime.strTime,但在没有错误消息的情况下无法使用它 def display_by_date(list): list.sort(key=lambda x: datet
my_list = [["10/15/2018", "John"], ["10/12/2019", "Beth"], ["9/15/2018", "Cory"]]
我需要列表按日期升序排序,并逐行打印
我知道list.sort()
不能生成正确的顺序。我尝试使用datetime.strTime,但在没有错误消息的情况下无法使用它
def display_by_date(list):
list.sort(key=lambda x:
datetime.datetime.strptime(x['Created'], '%m %d %Y'))
for entry in list:
print(entry)
display_by_date(my_list)
TypeError:列表索引必须是整数或片,而不是str
尝试使用指定排序
键
请尝试以下代码:
import pandas as pd
my_list = [["10/15/2018", "John"], ["10/12/2019", "Beth"], ["9/15/2018", "Cory"], ["10/11/2019", "Carl"]]
my_list.sort(key=lambda x: pd.to_datetime(x[0], format='%m/%d/%Y'))
并给出:
[['9/15/2018', 'Cory'],
['10/15/2018', 'John'],
['10/11/2019', 'Carl'],
['10/12/2019', 'Beth']]
[['9/15/2018', 'Cory'],
['10/15/2018', 'John'],
['10/11/2019', 'Carl'],
['10/12/2019', 'Beth']]