sig*_*nce 3 python dictionary for-loop list
我觉得我在这里错过了一些明显的东西!
seq = {'a': ['1'], 'aa': ['2'], 'aaa': ['3'], 'aaaa': ['4'], 'aaaaa': ['5']}
for s in seq:
print s
Run Code Online (Sandbox Code Playgroud)
输出:
a
aa
aaaa
aaaaa
aaa
Run Code Online (Sandbox Code Playgroud)
当然它应该输出:
a
aa
aaa
aaaa
aaaaa
Run Code Online (Sandbox Code Playgroud)
这里出了什么问题?
谢谢 :)
标准Python字典不是有序的:无法保证返回密钥的顺序.
如果您希望按照创建密钥的顺序返回密钥,则可以使用OrderedDict
fromcollections
.
或者,如果您希望输出按键的值排序,则可以执行以下操作:
for s in sorted(seq):
print s
Run Code Online (Sandbox Code Playgroud)