Lin*_* Ma 4 c++ python dictionary
我使用的是Python 2.7.x. 我有一个字典(我的意思是{}),键是int,值是字符串.我想检索具有最小整数值的键.在C++中,我认为我们可以使用map,它对键进行排序.在Python中,不确定我们是否可以利用类似的东西?如果我的理解是正确的,Python字典(我的意思是{})不按键排序.
林先生,提前谢谢
更新
当在字典中找到最小密钥时,OP表示需要O(1)性能.试试这个sortedcontainers模块.它提供了一个SortedDict类:
>>> from sortedcontainers import SortedDict
>>> d = SortedDict({100: 'a', 27: 'b', 1234: 'c'})
>>> d.keys()
SortedSet([27, 100, 1234], key=None, load=1000)
>>> d.keys()[0]
27
>>> d[d.keys()[0]]
'b'
Run Code Online (Sandbox Code Playgroud)
对于Python内置字典,您可以使用它min(d)来查找最低密钥:
>>> d = {100: 'a', 27: 'b', 1234: 'c'}
>>> print(d)
{1234: 'c', 27: 'b', 100: 'a'}
>>> print(min(d))
27
>>> print(d[min(d)])
b
Run Code Online (Sandbox Code Playgroud)