Python字典按照值的大小进行排序是一个非常常见的需求,可以通过一些简单的方法来实现。
sorted()函数接受一个可迭代对象作为输入,并返回一个由排序后的元素组成的列表。可以使用sorted()函数来按照字典中值的大小进行排序,可以使用lambda函数来指定排序的键:
d = {'name': 'John', 'age': 26, 'height': 175} # 根据字典中值的大小进行排序 sorted_d = sorted(d.items(), key=lambda x: x[1]) print(sorted_d) # [('name', 'John'), ('age', 26), ('height', 175)]
python中的collections模块提供了OrderedDict类,该类提供了一个有序字典,可以按照插入的顺序来迭代字典中的元素,可以使用它来按照字典中值的大小进行排序:
from collections import OrderedDict d = {'name': 'John', 'age': 26, 'height': 175} # 根据字典中值的大小进行排序 sorted_d = OrderedDict(sorted(d.items(), key=lambda x: x[1])) print(sorted_d) # OrderedDict([('name', 'John'), ('age', 26), ('height', 175)])
operator模块提供了itemgetter函数,可以用来获取字典中指定的元素,可以将其用于按照字典中值的大小进行排序:
import operator d = {'name': 'John', 'age': 26, 'height': 175} # 根据字典中值的大小进行排序 sorted_d = sorted(d.items(), key=operator.itemgetter(1)) print(sorted_d) # [('name', 'John'), ('age', 26), ('height', 175)]
Python字典按照值的大小进行排序可以使用内置函数sorted(),collections模块中的OrderedDict,以及operator模块中的itemgetter函数来实现,这些都是非常简单的方法,可以快速实现按照值的大小进行排序的需求。
本文链接:http://task.lmcjl.com/news/8726.html