【发布时间】:2015-04-24 13:48:33
【问题描述】:
我有一个元组列表,每个元组都包含一个日期,然后是一个数字。
days = [('04/02/15', 4.5),('03/15/15', 5.0),('04/21/15', 1.9)]
我想按日期对它们进行排序。 如何将它们转换为 DateTime 对象或以其他方式对它们进行排序?
【问题讨论】:
我有一个元组列表,每个元组都包含一个日期,然后是一个数字。
days = [('04/02/15', 4.5),('03/15/15', 5.0),('04/21/15', 1.9)]
我想按日期对它们进行排序。 如何将它们转换为 DateTime 对象或以其他方式对它们进行排序?
【问题讨论】:
你可以使用strptime:
from time import strptime
days = [('04/02/15', 4.5), ('03/15/15', 5.0), ('04/21/15', 1.9)]
days.sort(key = lambda tup: strptime(tup[0], '%m/%d/%y'))
【讨论】:
time.strptime() 返回time.struct_time,而不是datetime 对象,如datetime.strptime() 和问题标题所示。不过,作为排序键,time.struct_time 也适用于此。