dict排序

根据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}]

 

posted @ 2019-08-17 15:45  夷陵老祖魏无羡  阅读(457)  评论(0编辑  收藏  举报