停止Python在字典中排序字典的顺序
如果我创建一个字典里面还有字典
mydict = {
'zstuff':{
'zzz':True,
'aaa':True
},
'astuff':{
'zzz':True,
'aaa':True
}
}
然后用'for'循环来遍历这些字典
for key in mydict:
for tag in mydict[key]:
print "{}:{}".format(key,tag)
Python 输出的结果是
zstuff:aaa
zstuff:zzz
astuff:aaa
astuff:zzz
有没有办法让 Python 不重新排列第二层的字典呢?
2 个回答
1
from collections import OrderedDict
mydict = {'zstuff' : OrderedDict(zzz=True, aaa=True),
'astuff' : OrderedDict(zzz=True, aaa=True)}
当然可以!请把你想要翻译的内容发给我,我会帮你把它变得简单易懂。
7
Python中的字典并不是按照字母顺序排列的。实际上,它的排列是随意的。如果你需要一个能保持原始顺序的字典对象,可以看看Python 2.7中提供的collections.OrderedDict
类。