python 根据字典的键值进行排序的方法
时间:2021-04-15 11:19:25|栏目:Python代码|点击: 次
1、利用key排序
d = {'d1':2, 'd2':4, 'd4':1,'d3':3,}
for k in sorted(d):
print(k,d[k])
d1 2
d2 4
d3 3
d4 1
2、利用value排序:__getitem__
d = {'d1':2, 'd2':4, 'd4':1,'d3':3,}
for k in sorted(d,key=d.__getitem__):
print(k,d[k])
d4 1
d1 2
d3 3
d2 4
反序:reverse=True
d = {'d1':2, 'd2':4, 'd4':1,'d3':3,}
for k in sorted(d,key=d.__getitem__,reverse=True):
print(k,d[k])
d2 4
d3 3
d1 2
d4 1
3、对dict_items进行排序
d = {'d1':2, 'd2':4, 'd4':1,'d3':3,}
res = sorted(d.items(),key=lambda d:d[1],reverse=True)
print(res)
[('d2', 4), ('d3', 3), ('d1', 2), ('d4', 1)]
ps:下面给大家介绍两个函数
1.lambda
功能: 创建匿名函数
区别: 和def函数定义,以下两点区别
•lambda会创建一个函数对象,但不会把这个函数对象赋给一个标识符;而def则会把函数对象赋值给一个变量
•lambda它只是一个表达式,而def则是一个语句
案例:

2.iteritems()
功能: iteritems()以迭代器对象返回字典键值对
区别: 和item相比:items以列表形式返回字典键值对
案例:

注释: 在函数sorted(dic.iteritems(), key = lambda asd:asd[1])中,第一个参数传给第二个参数“键-键值”,第二个参数取出其中的键([0])或键值(1])
总结
栏 目:Python代码
下一篇:使用Pycharm在运行过程中,查看每个变量的操作(show variables)
本文地址:http://www.codeinn.net/misctech/101921.html






