根据dict值排序
c = {1:10,2:9,3:8}
c = sorted(c.items(), key=lambda d: d[1], reverse=1)
reverse=1 从大到小排列 起到逆排的作用,默认reverse=False
key=
列表里面的每一个元素都为二维元组,key参数传入了一个lambda函数表达式,
其x就代表列表里的每一个元素,然后分别利用索引返回元素内的第一个和第二个元素,这就代表了sorted()函数利用哪一个元素进行排列
对字典列表排序
l = [{'name':'zhangsan1','age':20},{'name':'zhangsan2','age':19},{'name':'zhangsan3','age':18}]
使用list自带sort()函数
l.sort(key=lambda d:d['age']) l>>>
Out[17]:
[{'name': 'zhangsan3', 'age': 18},
{'name': 'zhangsan2', 'age': 19},
{'name': 'zhangsan1', 'age': 20}]
或者使用sorted()内置函数
l = sorted(l,key=lambda d:d['age'])
l>>>
Out[21]:
[{'name': 'zhangsan3', 'age': 18},
{'name': 'zhangsan2', 'age': 19},
{'name': 'zhangsan1', 'age': 20}]