python 根据字典的键值进行排序的方法

时间:2021-05-23

1、利用key排序

d = {'d1':2, 'd2':4, 'd4':1,'d3':3,}for k in sorted(d): print(k,d[k])d1 2d2 4d3 3d4 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 1d1 2d3 3d2 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 4d3 3d1 2d4 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 根据字典的键值进行排序的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章