Python 按特定键的降序排列词典列表

Python 按特定键的降序排列词典列表,python,python-3.x,Python,Python 3.x,例如,我有一个python词典列表 [{'a':3, 'b':4, 'c':5, 'd':'6'}, {'a':1, 'b':2, 'c':7, 'd':'9'}] 我想根据'c'的值按降序对其进行排序。我尝试使用key=lambda使用sorted()方法,但没有任何帮助 有什么想法吗?写这篇文章有很多方法。在您熟悉lambdas之前,最好将其明确地写出来: def sort_key(d): return d['c'] sorted(list_of_dict, key=sort_k

例如,我有一个python词典列表

[{'a':3, 'b':4, 'c':5, 'd':'6'}, {'a':1, 'b':2, 'c':7, 'd':'9'}]
我想根据'c'的值按降序对其进行排序。我尝试使用
key=lambda
使用
sorted()
方法,但没有任何帮助


有什么想法吗?

写这篇文章有很多方法。在您熟悉lambdas之前,最好将其明确地写出来:

def sort_key(d):
    return d['c']

sorted(list_of_dict, key=sort_key, reverse=True)
训练有素的眼睛将看到这与以下一个衬里相同:

sorted(list_of_dict, key=lambda d: d['c'], reverse=True)
或者,可能:

from operator import itemgetter
sorted(list_of_dict, key=itemgetter('c'), reverse=True)

投票赞成。但也要提到
reverse=True
,因为OP要求降序
import operator
list_of_dicts.sort(key=operator.itemgetter('c'), reverse=True)