sorting - Python sort dict by key value - 如何按键对一个字典进行排序?

Python3 sorted dict by value / python / dictionary

{2:3, 1:89, 4:5, 3:0}{1:89, 2:3, 3:0, 4:5} 什么?
我检查了一些帖子,但他们都使用了返回图元的 "sorted "操作符。

MERose



Answer #1

如果你需要不断地添加和删除键/值对,同时还需要迭代,那么使用一个有序的dict是一个不合适的解决方案。

>>> from sortedcontainers import SortedDict
>>> d = {2:3, 1:89, 4:5, 3:0}
>>> s = SortedDict(d)
>>> s.items()
[(1, 89), (2, 3), (3, 0), (4, 5)]

SortedDict类型还支持索引式的位置查询和删除,这在内置的dict类型中是不可能的。

>>> s.iloc[-1]
4
>>> del s.iloc[2]
>>> s.keys()
SortedSet([1, 2, 4])