我有一个日期列表如下:
list_dates = ['2013-05-01', '15th Oct 2013', '01-05-13', '2013/FEB/05',. . .]
我想要的是:
list_dates = ['2013-05-01', '2013-10-15', '2013-05-01', '2013-02-05', . . .]
是否有任何方法或包/模块来完成此任务?
答案 0 :(得分:8)
您可以尝试使用第三方库dateutil的parser
,这通常非常擅长确定解析日期的正确方法(至少比我以前更好的方式) :))。 parser.parse
的结果是datetime
对象,您可以使用所需的格式调用strftime
:
In [1]: from dateutil import parser
In [2]: list_dates = ['2013-05-01', '15th Oct 2013', '01-05-13', '2013/FEB/05']
In [3]: [parser.parse(date).strftime('%Y-%m-%d') for date in list_dates]
Out[3]: ['2013-05-01', '2013-10-15', '2013-01-05', '2013-02-05']
答案 1 :(得分:1)
您可以使用日期时间和时间模块。 http://docs.python.org/2/library/datetime.html http://docs.python.org/2/library/time.html
答案 2 :(得分:1)
尝试使用datetime.datetime,它提供了strptime和strftime方法来完成这项任务。