如何对这样的字典(简化版)进行排序:
x = {
'1': {
'type': 'a',
'created_at': 'date time object here',
},
'2': {
'type': 'b',
'created_at': 'date time object here',
},
'3': {
'type': 'a',
'created_at': 'date time object here',
},
}
我有一个字典,结构如上,有几十万个键,我需要通过created_at值对它进行排序,这是一个日期时间对象。
答案 0 :(得分:3)
使用简单的key
函数:
sorted(d.iteritems(), key=lambda i: i[1]['created_at'])
这将生成一个(key, nested_dict)
元组的排序列表,按嵌套字典的'created_at'
键排序。
在Python 3中,将iteritems()
替换为items()
。你无法避免创建一个列表;排序需要一个可订购的,可变的序列来移动项目。