我正在尝试根据内部字典(a + b + C)的值之和对以下字典列表进行排序
d2=[{'id': 255, 's': {'a': 50, 'b': 60, 'c': 0}},
{'id': 257, 's': {'a': 100, 'b': 10, 'c': 0}},
{'id': 285, 's': {'a': 20, 'b': 10, 'c': 0}}]
答案 0 :(得分:2)
以下是解决方案,
sorted(d2, key=lambda x:x['s']['a']+x['s']['b']+x['s']['c'])
答案 1 :(得分:1)
试试这个:
d2 = sorted(d2, key=lambda x: sum(x['s'].values()))
答案 2 :(得分:1)
要进行排序,请使用list.sort
并在密钥中使用必需的字典键。
<强>实施例强>
d2.sort(key=lambda item:sum(item['s'].values()))