从 Python 3.6 开始,Python 中的字典是有序的
From - https://stackoverflow.com/a/39980744/4647107 https://stackoverflow.com/a/39980744/4647107
Python 3.6+ 中的字典是有序的吗?
它们是按顺序插入的。从 Python 3.6 开始,对于 CPython
Python的实现,字典记住项目的顺序
插入。这被认为是 Python 3.6 中的一个实现细节;
如果您想要插入顺序,则需要使用 OrderedDict
在 Python 的其他实现中得到保证。
从 Python 3.7 开始,这不再是实现细节,
相反成为一种语言特征。来自 GvR 的 python-dev 消息:
就这样吧。裁决是“Dict 保持插入顺序”。谢谢!
这仅仅意味着您可以依赖它。其他实现
如果 Python 愿意的话,它们还必须提供插入顺序字典
是 Python 3.7 的一致实现。
现在有没有办法在python中实现无序字典?
你可以伪造它:
>>> import random
>>> d={'a':[1,2,3],'b':[4,5,6],'c':[7,8,9]}
>>> items=list(d.items())
>>> random.shuffle(items)
>>> dict(items)
{'c': [7, 8, 9], 'b': [4, 5, 6], 'a': [1, 2, 3]}
>>>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)