【发布时间】:2014-08-22 15:14:59
【问题描述】:
我有一个从电子表格中读取的不同类型的列表。
>>>data
[1.0, u'1', u'COMPLETED', u'TONGUE', 30.0, 1.0, '2014/01/28 09:33:16', 30.0, 210.0, u'1 CW', 0.0, 2.0, 210.0, u'H1490']
[1.0, u'1', u'COMPLETED', u'TONGUE', 30.0, 1.0, '04/02/2014 09:14:36', 30.0, 230.0, u'2 CCW', 0.0, 7.0, 210.0, u'H990']
.......
我想按日期排序,即按第 6 个字段(data[1][6],data[2][6] 等)排序。如何指示 Python 按字段编号 6 对该列表进行排序?
【问题讨论】:
-
pass key 使用 lambda 进行排序或排序
-
@Owen 压缩列表与我的要求完全不同
-
如果没有一致的日期格式,这是非常困难的。 “04/02/2014”晚于还是早于“05/01/2014”?取决于后者是 2014 年 5 月 1 日还是 2014 年 1 月 5 日。
-
YYYYMMDD 样式的日期可以按字典顺序排序,因此在这种情况下您根本不需要进行任何解析。
-
是的
str可以按 Kevin 所说的按字典顺序排序,但如果它不是最重要的元素顺序并且每个元素0填充到相同的位数,它不会变成你如何想要。
标签: python sorting python-2.7 python-3.x ipython