字典:如何保持键/值与声明的顺序相同?我有一个字典,我按特定顺序声明,并希望始终保持该顺序。键/值不能根据它们的值按顺序保存,我只是按照我声明的顺序想要它。所以,如果我有字典:d = {'ac': 33, 'gw': 20, 'ap': 102, 'za': 321, 'bs': 10}如果我查看它或迭代它,它是不是按顺序,有没有办法确保Python将保持我声明键/值的显式顺序?
4 回答
![?](http://img1.sycdn.imooc.com/54584d080001566902200220-100-100.jpg)
潇潇雨雨
TA贡献1833条经验 获得超4个赞
from collections import OrderedDictOrderedDict((word, True) for word in words)
包含
OrderedDict([('He', True), ('will', True), ('be', True), ('the', True), ('winner', True)])
如果值是True
(或任何其他不可变对象),您还可以使用:
OrderedDict.fromkeys(words, True)
![?](http://img1.sycdn.imooc.com/5458643d0001a93c02200220-100-100.jpg)
UYOU
TA贡献1878条经验 获得超4个赞
我将举一个简单的例子,而不是解释理论部分。
>>> from collections import OrderedDict
>>> my_dictionary=OrderedDict()
>>> my_dictionary['foo']=3
>>> my_dictionary['aol']=1
>>> my_dictionary
OrderedDict([('foo', 3), ('aol', 1)])
>>> dict(my_dictionary)
{'foo': 3, 'aol': 1}
添加回答
举报
0/150
提交
取消