Python教程

发现一个秘密:既python3.6之后字典竟然变成了有序集合,我再次验证了一下!

本文主要是介绍发现一个秘密:既python3.6之后字典竟然变成了有序集合,我再次验证了一下!,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

file

高版本我一直使用的是3.8的版本,我先用python3.8的版本来测试查看是不是会产生有序的字…

test_dict = {'o': 1,'p': 2,'q': 3,'r': 4,'s': 5,'t': 6}

使用ksys()函数验证字典的键是否有序

print(test_dict.keys())

# dict_keys(['o', 'p', 'q', 'r', 's', 't'])
# Process finished with exit code 0

遍历字典再次验证

for key,value in test_dict.items():
    print(key,value)

# dict_keys(['o', 'p', 'q', 'r', 's', 't'])
# o 1
# p 2
# q 3
# r 4
# s 5
# t 6

发现python3.8版本的字典集合真的变成有序字典了。最后,找个3.6以下的版本再来验证一番,使用同样的数据来进行验证

# Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)] on win32
# Type "help", "copyright", "credits" or "license" for more information.
# >>> test_dict = {'o': 1,'p': 2,'q': 3,'r': 4,'s': 5,'t': 6}
# >>> print(test_dict.keys())
# ['o', 'q', 'p', 's', 'r', 't']
# >>>

首先keys()函数遍历的键就是无序的

# >>> for key,value in test_dict.items():
# ...     print(key,value)
# ...
# ('o', 1)
# ('q', 3)
# ('p', 2)
# ('s', 5)
# ('r', 4)
# ('t', 6)

最后,遍历的键值都是无序的。今天就到这里了,小编才加完班该回家了!

这篇关于发现一个秘密:既python3.6之后字典竟然变成了有序集合,我再次验证了一下!的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!