zhfjx.cn zhfjx.cn

欢迎光临
我们一直在努力
顶部
域名
云服务器48/月

python字典如何按value值排序-Python教程-

python字典如何按value值排序

sorted函数

首先介绍sorted函数,sorted(iterable,key,reverse),sorted一共有iterable,key,reverse这三个参数。

其中iterable表示可以迭代的对象,例如可以是dict.items()、dict.keys()等,key是一个函数,用来选取参与比较的元素,reverse则是用来指定排序是倒序还是顺序,reverse=true则是倒序(从大到小),reverse=false则是顺序(从小到大),默认是reverse=false。

按照value值排序

共有三种方法可以实现将字典按照value值进行排序

key使用lambda匿名函数取value进行排序

d = {'lilee':25, 'wangyan':21, 'liqun':32, 'age':19}
sorted(d.items(), key=lambda item:item[1])
登录后复制

输出结果为

[('age',19),('wangyan',21),('lilee',25),('liqun',32)]
登录后复制
登录后复制
登录后复制

如果需要倒序则

sorted(d.items(), key=lambda item:item[1], reverse=True)
登录后复制

得到的结果就会是

[('liqun',32),('lilee',25),('wangyan',21),('age',19)]
登录后复制

使用operator的itemgetter进行排序

import operator
sorted(d.items(), key=operator.itemgetter(1))
登录后复制

输出结果为

[('age',19),('wangyan',21),('lilee',25),('liqun',32)]
登录后复制
登录后复制
登录后复制

将key和value分装成元组,再进行排序

f = zip(d.keys(), d.values())
c = sorted(f)
登录后复制

输出结果为

[('age',19),('wangyan',21),('lilee',25),('liqun',32)]
登录后复制
登录后复制
登录后复制

以上就是python字典如何按value值排序的详细内容,更多请关注php中文网其它相关文章!

【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。
-六神源码网 -六神源码网