帮助整理此列表
from operator import itemgetter
l = [
{'Ad28b4fac': {'url': 'http://a.com/', 'rating': 0}},
{'cx28b4ffc': {'url': 'http://www.dbr/', 'rating': 1}}
]
# sort this list by rating value
我试试
sorted(l, key=lambda x : l[x])
试
l.sort();
感谢您的帮助
答案 0 :(得分:0)
像
这样的东西>>> sorted(l, key=lambda x : list(x.keys())[0])
[{'Ad28b4fac': {'url': 'http://a.com/', 'rating': 0}}, {'cx28b4ffc': {'url': 'http://www.dbr/', 'rating': 1}}]
每次迭代的lambda参数是列表l
中的字典。现在我们希望对字典键上的数据进行排序。因此使用dict.keys()
函数将返回字典中的所有键。我们采用第一个[0]
,它恰好是基于此的唯一键和排序。