跳到主要内容

现有字典 d= {'a':24,'g':52,'i':12,'k':33}请按 value 值进行排序?

参考答案:

在Python中,你可以使用sorted()函数对字典进行排序。但是,sorted()函数默认对字典的键(key)进行排序,而不是值(value)。为了按值排序,你需要提供一个key参数,该参数是一个函数,用于从每个元素中提取用于排序的值。在你的情况下,你可以使用lambda函数来提取字典的值。

这是一个例子,演示了如何按值对字典进行排序:

d = {'a': 24, 'g': 52, 'i': 12, 'k': 33}

# 使用 sorted() 函数按值对字典进行排序
# key 参数指定了用于排序的值(在这里是字典的值)
sorted_d = dict(sorted(d.items(), key=lambda item: item[1]))

print(sorted_d)

在这个例子中,d.items()返回了一个包含字典所有键值对的列表。然后,sorted()函数对这个列表进行排序,key=lambda item: item[1]指定了排序的依据是每个元素(在这里是键值对)的第二个元素(即值)。最后,dict()函数将排序后的列表转换回字典。

运行这段代码,你将得到一个新的字典,其中的元素按值从小到大排序:

{'i': 12, 'a': 24, 'k': 33, 'g': 52}