📅  最后修改于: 2023-12-03 14:46:19.707000             🧑  作者: Mango
本测验包含问题16,测试您对Python词典的理解。
以下是一个Python词典:
my_dict = {"apple": 2, "banana": 4, "orange": 1, "kiwi": 3}
请问如何按值对词典进行排序?
可以使用内置的sorted()函数,将词典转换为包含元组的列表,并按元组的第二个元素(值)进行排序。排序后,可以使用collections.OrderedDict将其转换回一个排序的词典。
import collections
my_dict = {"apple": 2, "banana": 4, "orange": 1, "kiwi": 3}
sorted_dict = sorted(my_dict.items(), key=lambda x: x[1])
sorted_odict = collections.OrderedDict(sorted_dict)
print(sorted_odict)
输出为:
OrderedDict([('orange', 1), ('apple', 2), ('kiwi', 3), ('banana', 4)])
其中lambda函数用于获取元组的第二个元素(值),这是sorted()函数用于排序的键。最后,我们将排序的列表转换回有序的词典并打印输出。