有两种常见的方法可以按优先级对Python字典进行排序:使用sorted()函数和使用operator模块中的itemgetter()函数。
方法1:使用sorted()函数
my_dict = {'apple': 3, 'banana': 2, 'cherry': 4, 'date': 1}
sorted_dict = dict(sorted(my_dict.items(), key=lambda x: x[1], reverse=True))
print(sorted_dict)
输出:
{'cherry': 4, 'apple': 3, 'banana': 2, 'date': 1}
方法2:使用operator模块中的itemgetter()函数
import operator
my_dict = {'apple': 3, 'banana': 2, 'cherry': 4, 'date': 1}
sorted_dict = dict(sorted(my_dict.items(), key=operator.itemgetter(1), reverse=True))
print(sorted_dict)
输出:
{'cherry': 4, 'apple': 3, 'banana': 2, 'date': 1}
这两种方法都是使用字典的items()方法将字典转换为(key, value)元组的列表,然后根据元组中的第二个元素(即优先级)进行排序。最后使用dict()函数将排序后的列表转换回字典。reverse=True参数用于按降序排序。
上一篇:按优先级对分组数组进行排序