Python实现字典依据value排序


具体内容如下:

使用sorted将字典按照其value大小排序

>>> record = {'a':89, 'b':86, 'c':99, 'd':100}
>>> sorted(record.items(), key=lambda x:x[1])
[('b', 86), ('a', 89), ('c', 99), ('d', 100)]

sorted第一个参数要可迭代,可以为tuple, list

>>> items = [(1, 'B'), (1, 'A'), (2, 'A'), (0, 'B'), (0, 'a')]
>>> sorted(items)
[(0, 'B'), (0, 'a'), (1, 'A'), (1, 'B'), (2, 'A')]

为什么(0, 'B')在(0, 'a')前面?

因为ASCII码中大写字母排在在小写字母前面,使用str.lower()方法改变其顺序

>>> sorted(items, key=lambda x:(x[0], x[1].lower()))
[(0, 'a'), (0, 'B'), (1, 'A'), (1, 'B'), (2, 'A')]

以上内容是关于Python实现字典依据value排序的相关知识,希望对大家有所帮助!

12步教你理解Python装饰器
通过下面的步骤让你由浅入深明白装饰器是什么。假定你拥有最基本的Python知识,本文阐述的东西可能对那些在工作中经常接触Python的人有很大的帮助

Android应用开发中Action bar编写的入门教程
从Android3.0开始除了我们重点讲解的Fragment外,ActionBar也是一个重要的内容,ActionBar主要是用于代替传统的标题栏,对于Android平板设备来说屏幕更大它的

简析Python的闭包和装饰器
什么是装饰器?装饰器(Decorator)相对简单,咱们先介绍它:装饰器的功能是将被装饰的函数当作参数传递给与装饰器对应的函数(名称相同的函数)