当我们需要对一个字典按照key或者value排序时,可以使用Python内置的函数sorted()来实现。
1. 对字典按key排序
我们可以使用sorted函数传入字典的items()方法,同时利用lambda函数的返回值对每一个键值对进行比较,从而实现按照key排序的效果。
d = {"apple": 2, "banana": 4, "orange": 1, "pear": 3}
sorted_d = dict(sorted(d.items(), key=lambda x: x[0]))
print(sorted_d)
Output:
{'apple': 2, 'banana': 4, 'orange': 1, 'pear': 3}
2. 对字典按value排序
我们可以使用sorted函数传入字典的items()方法,同时利用lambda函数的返回值对每一个键值对进行比较,从而实现按照value排序的效果。
d = {"apple": 2, "banana": 4, "orange": 1, "pear": 3}
sorted_d = dict(sorted(d.items(), key=lambda x: x[1]))
print(sorted_d)
Output:
{'orange': 1, 'apple': 2, 'pear': 3, 'banana': 4}
3.对字典按value排序并降序排列
如果想要按value排序并且降序排列,我们需要设置reverse参数为True
d = {"apple": 2, "banana": 4, "orange": 1, "pear": 3}
sorted_d = dict(sorted(d.items(), key=lambda x: x[1], reverse=True))
print(sorted_d)
Output:
{'banana': 4, 'pear': 3, 'apple': 2, 'orange': 1}
通过以上的操作,我们可以很方便地根据需求对字典的key和value排序。