下面是Python字典按键和值排序的完整攻略。
按键排序
1. 根据字典键排序
可以使用sorted()
函数对字典键进行排序,得到一个键的有序列表,再通过循环来获取键对应的值实现排序。
例如,需要对一个字典d
按键进行排序,代码如下:
d = {'banana': 3, 'apple': 4, 'pear': 1, 'orange': 2}
sorted_keys = sorted(d.keys()) # 对字典键排序,得到有序列表
for key in sorted_keys:
print(key, ':', d[key])
输出结果为:
apple : 4
banana : 3
orange : 2
pear : 1
2. 根据字典值排序
如果需要根据字典值排序,可以使用sorted()
函数的key
参数,指定排序规则为d.get
,表示根据字典值排序。
例如,需要对一个字典d
按值进行排序,代码如下:
d = {'banana': 3, 'apple': 4, 'pear': 1, 'orange': 2}
sorted_keys = sorted(d.keys(), key=lambda x: d[x]) # 根据字典值排序,得到有序列表
for key in sorted_keys:
print(key, ':', d[key])
输出结果为:
pear : 1
orange : 2
banana : 3
apple : 4
按值排序
1. 根据字典值排序
如果需要根据字典值排序,可以使用sorted()
函数的key
参数,指定排序规则为d.get
,表示根据字典值排序。
例如,需要对一个字典d
按值进行排序,代码如下:
d = {'banana': 3, 'apple': 4, 'pear': 1, 'orange': 2}
sorted_items = sorted(d.items(), key=lambda x: x[1]) # 根据字典值排序,得到有序元组列表
for item in sorted_items:
print(item[0], ':', item[1])
输出结果为:
pear : 1
orange : 2
banana : 3
apple : 4
2. 根据字典值排序并颠倒顺序
还可以使用sorted()
函数的reverse
参数将排序结果颠倒,实现倒序排列。
例如,需要对一个字典d
按值进行排序并颠倒顺序,代码如下:
d = {'banana': 3, 'apple': 4, 'pear': 1, 'orange': 2}
sorted_items = sorted(d.items(), key=lambda x: x[1], reverse=True) # 根据字典值排序并颠倒顺序,得到有序元组列表
for item in sorted_items:
print(item[0], ':', item[1])
输出结果为:
apple : 4
banana : 3
orange : 2
pear : 1
以上是Python字典按键和值排序的完整攻略,希望能够帮助到你。