我是靠谱客的博主 孤独乌冬面,最近开发中收集的这篇文章主要介绍python字典元素是否有序_python中字典是有序的吗,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

8060c55d7cb0ddffb9fc90182ed70db4.png

字典的无序是指数据存进字典的顺序跟取出字典的顺序不一致

Python2的字典是无序的>>> d = {'a':-1,'b':-1,'c':-1}>>> d

{'a': -1, 'c': -1, 'b': -1}>>> for k,v in d.items():

... print k,v

...

a -1c -1b -1

那如何保持字典有序呢?使用OrderedDict>>> from collections import OrderedDict

>>> d = OrderedDict()

>>> d['a'] = 1

>>> d['b'] = 2

>>> d['c'] = 3

>>> d

OrderedDict([('a', 1), ('b', 2), ('c', 3)])

>>> for k,v in d.items():

... print k,v

...

a 1

b 2

c 3

那为什么会是无序的呢?哈希结构会有一个head地址,里面的数据会分散到不同的列表链,所以看似是无序的,但对于同一组字典,总需要有一个标识去连结,所以读取时也会按存储顺序取数据,只是不会按特定规则排列。

Python3中字典是有序的>>> d = {'a':-1,'b':-1,'c':-1}

>>> d

{'a': -1, 'b': -1, 'c': -1}

>>> for k,v in d.items():

... print(k,v)

...

a -1

b -1

c -1

最后

以上就是孤独乌冬面为你收集整理的python字典元素是否有序_python中字典是有序的吗的全部内容,希望文章能够帮你解决python字典元素是否有序_python中字典是有序的吗所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部