python 按值排序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 按值排序相关的知识,希望对你有一定的参考价值。

转自:http://www.cnpythoner.com/post/266.html,感谢分享!

python 字典(dict)的特点就是无序的,按照键(key)来提取相应值(value),如果我们需要字典按值排序的话,那可以用下面的方法来进行:

1 下面的是按照value的值从大到小的顺序来排序。

dic = {‘a‘:31, ‘bc‘:5, ‘c‘:3, ‘asd‘:4, ‘aa‘:74, ‘d‘:0}
dict= sorted(dic.iteritems(), key=lambda d:d[1], reverse = True)
print dict

输出的结果:
[(‘aa‘, 74), (‘a‘, 31), (‘bc‘, 5), (‘asd‘, 4), (‘c‘, 3), (‘d‘, 0)]

下面我们分解下代码
print dic.iteritems() 得到[(键,值)]的列表。
然后用sorted方法,通过key这个参数,指定排序是按照value,也就是第一个元素d[1的值来排序。reverse = True表示是需要翻转的,默认是从小到大,翻转的话,那就是从大到小。

2 对字典按键(key)排序:
dic = {‘a‘:31, ‘bc‘:5, ‘c‘:3, ‘asd‘:4, ‘aa‘:74, ‘d‘:0}
dict= sorted(dic.iteritems(), key=lambda d:d[0]) d[0]表示字典的键
print dict

以上是关于python 按值排序的主要内容,如果未能解决你的问题,请参考以下文章

Python - 字典按值(value)排序

按值排序python集列表

如何按值对计数器进行排序? - Python

如何按值对 Python 字典进行排序? [复制]

python 按值排序字典

python 按值计数对字典进行排序