如何设置Python字典以值进行排序?

对于学习语言的小伙伴,每年都会碰到几次考试或者上机试题,每一次,老师为了我们考试都煞费苦心,之前跟大家讲过关于字典里的sorted函数对于排序上的使用,并且告知大家,这个是经常会碰到的问题,小伙伴们果然真的遇到了这个问题,但是换了一种方法,要求使用值排序,这又是什么呢?存在疑惑的,可以继续阅读下文。

要怎么根据字典值来排序呢?

即有列表为

b = [
{'test': 'a0', 'value': 0}, {'test': 'a1', 'value': 1},
{'test': 'a2', 'value': 2}, {'test': 'a3', 'value': 3},
{'test': 'a4', 'value': 4}
]

解决方案

用lambda

sort_l = sorted(b, key=lambda x : x['value'], reverse=True)

用operator

import operator
sort_o = sorted(b, key=operator.itemgetter('value'), reverse=True)

用上面的两种方法,我们可以得到如下结果

[
{'test': 'a4', 'value': 4}, {'test': 'a3', 'value': 3},
{'test': 'a2', 'value': 2}, {'test': 'a1', 'value': 1},
{'test': 'a0', 'value': 0}
]

好啦,小伙伴们如果在碰到需要用到值排序的,可以跟着小编的这个操作,进行应用学习哦~

来源:PY学习网:原文地址:https://www.py.cn/article.html

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » 如何设置Python字典以值进行排序?