你如何维护一个按其值排序的字典?

时间:2017-02-19 22:40:12

标签: python sorting dictionary

blist提供了一个按键排序的字典,但我希望按值排序(我不关心绑定值的排序)。

我尝试过以下操作,但它会因KeyError: 1而爆炸。

from blist import sorteddict
d = sorteddict(lambda k: d[k])
d[1] = 5       # KeyError: 1

那么我该如何正确实现这一目标呢?

1 个答案:

答案 0 :(得分:0)

也许这就是您想要的?

例如,假设您有一本字典:

dictionary = {1:2, 2:0, 3:-1}

然后,您可以按值对键重新排序。在此示例中,我将按升序重新排序。

dict(sorted(dictionary.items(), key = lambda x: dictionary[x[0]]))

您将获得:

{3: -1, 2: 0, 1: 2}
相关问题