从日期字符串列表中获取最大日期
Getting the max date from a list of date strings
我有一个字符串形式的日期列表:
dates = ['12/24/2017','7/7/2011','3/5/2016', '4/21/2018']
我想获取最新的日期。但是,我不能只对这个列表使用 max()
。
max(dates)
>>> `7/7/2011'
有没有更简单的方法(mod或库)?
您可以使用 max()
但您必须使用 key
参数将日期字符串转换为真实日期以便它们正确比较,例如:
In []:
from datetime import datetime
max(dates, key=lambda d: datetime.strptime(d, '%m/%d/%Y'))
Out[]:
'4/21/2018'
您可以将它们转换为所有真实日期,然后只需调用 max()
:
In []:
dates = [datetime.strptime(d, '%m/%d/%Y') for d in dates]
max(dates)
Out[]:
datetime.datetime(2018, 4, 21, 0, 0)
我有一个字符串形式的日期列表:
dates = ['12/24/2017','7/7/2011','3/5/2016', '4/21/2018']
我想获取最新的日期。但是,我不能只对这个列表使用 max()
。
max(dates)
>>> `7/7/2011'
有没有更简单的方法(mod或库)?
您可以使用 max()
但您必须使用 key
参数将日期字符串转换为真实日期以便它们正确比较,例如:
In []:
from datetime import datetime
max(dates, key=lambda d: datetime.strptime(d, '%m/%d/%Y'))
Out[]:
'4/21/2018'
您可以将它们转换为所有真实日期,然后只需调用 max()
:
In []:
dates = [datetime.strptime(d, '%m/%d/%Y') for d in dates]
max(dates)
Out[]:
datetime.datetime(2018, 4, 21, 0, 0)