Sorting a dictionary in python
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
Python: Sort a dictionary by value
我需要按值按降序对原始字典进行排序。作为键,我有数字,作为值,我有一些日期和时间(字符串)。这意味着我有:
1 | {1: '2011-09-25 16:28:18', 2: '2011-09-25 16:28:19', 3: '2011-09-25 16:28:13', 4: '2011-09-25 16:28:25'} |
我想要:
1 | {4: '2011-09-25 16:28:25', 2: '2011-09-25 16:28:19', 1: '2011-09-25 16:28:18', 3: '2011-09-25 16:28:13'} |
请看一下时间(值)。我想按降序排列时间。这意味着,最近一次是第一次。
事先谢谢!
1 2 3 4 5 6 7 8 9 | import operator x = { 1: '2011-09-25 16:28:18', 2: '2011-09-25 16:28:19', 3: '2011-09-25 16:28:13', 4: '2011-09-25 16:28:25', } sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1), reverse=True) print(sorted_x) |
这个结果列表中的元组(key,value):
1 2 3 4 | [(4, '2011-09-25 16:28:25'), (2, '2011-09-25 16:28:19'), (1, '2011-09-25 16:28:18'), (3, '2011-09-25 16:28:13')] |
你可以用Python 2.7 3.1 collections.ordereddict或使用。这是早期的版本收集的国有企业。