Python字典存储
可能重复:Python字典存储,python,Python,可能重复: 我试着把一个dict复制到另一个上,但是是按顺序进行的。我有以下问题 mydict = {'carl':40, 'alan':2, 'bob':1, 'danny':3} d1={} for key in sorted(mydict): d1[key]=mydict[key] 当我打印d1时,它显示: {'bob': 1, 'danny': 3,
我试着把一个
dict
复制到另一个上,但是是按顺序进行的。我有以下问题
mydict = {'carl':40,
'alan':2,
'bob':1,
'danny':3}
d1={}
for key in sorted(mydict):
d1[key]=mydict[key]
当我打印d1
时,它显示:
{'bob': 1, 'danny': 3, 'carl': 40, 'alan': 2}
为什么不按顺序排列?字典没有顺序。
您必须使用。Python字典未排序。使用collections.OrderedDict
,因为dict
不记得第一次插入键的顺序。您需要。那么默认的顺序是什么?为什么它不像堆栈一样工作?顺序是由实现定义的。顺序应该被认为是随机的-dict就像一个哈希表,针对访问速度(O(1))进行了优化。