Python list sort in descending order
如何按降序排列此列表?
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | timestamp = [ "2010-04-20 10:07:30", "2010-04-20 10:07:38", "2010-04-20 10:07:52", "2010-04-20 10:08:22", "2010-04-20 10:08:22", "2010-04-20 10:09:46", "2010-04-20 10:10:37", "2010-04-20 10:10:58", "2010-04-20 10:11:50", "2010-04-20 10:12:13", "2010-04-20 10:12:13", "2010-04-20 10:25:38" ] | 
在一行中,使用
| 1 | timestamp.sort(key=lambda x: time.strptime(x, '%Y-%m-%d %H:%M:%S')[0:6], reverse=True) | 
。
向
| 1 2 3 4 | def foo(x): return time.strptime(x, '%Y-%m-%d %H:%M:%S')[0:6] timestamp.sort(key=foo, reverse=True) | 
这将为您提供数组的排序版本。
| 1 | sorted(timestamp, reverse=True) | 
如果要就地排序:
| 1 | timestamp.sort(reverse=True) | 
号
您只需执行以下操作:
| 1 | timestamp.sort(reverse=True) | 
号
因为您的列表已经按升序排列,所以我们可以简单地反转列表。
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | >>> timestamp.reverse() >>> timestamp ['2010-04-20 10:25:38', '2010-04-20 10:12:13', '2010-04-20 10:12:13', '2010-04-20 10:11:50', '2010-04-20 10:10:58', '2010-04-20 10:10:37', '2010-04-20 10:09:46', '2010-04-20 10:08:22', '2010-04-20 10:08:22', '2010-04-20 10:07:52', '2010-04-20 10:07:38', '2010-04-20 10:07:30'] | 
简单类型:
| 1 2 | timestamp.sort() timestamp=timestamp[::-1] | 
。