Discuss / Python / 为什么存入的数据,位置变掉了?

为什么存入的数据,位置变掉了?

Topic source

d = {'a':1,'b':2,'c':3,'d':4} print(d) {'a': 1, 'c': 3, 'b': 2, 'd': 4}

```

CONG-JI

#2 Created at ... [Delete] [Delete and Lock User]

"因为dict的存储不是按照list的方式顺序排列,所以,迭代出的结果顺序很可能不一样。"这是文章中原话,你可以看看

王李_WL

#3 Created at ... [Delete] [Delete and Lock User]

dict对应的是JAVA中的map,同样都是键值对的方式存入数据,而这种存放方法,是通过赋予对应的哈希(hash)值来进行存储的,而哈希值是计算机随机赋予,所以并不能保证数据存进去是按照顺序进行排序。

因为字典是无序的,可以导入有序字典OrderedDict


  • 1

Reply