Python中的字典到底是有序的吗

 更新时间:2021年09月28日 09:02:37   作者:小博测试成长之路  
很多人会问Python中的字典到底是有序的吗,本文就详细的来介绍一下,感兴趣的可以了解一下

之前写了文章介绍python中的列表和字典,在文章中描述到了python中的列表是有序的,字典是无序的,后来有粉丝在群里提醒我,说python3.6的版本之后,字典是有序的,因此,我找了一个低版本的python来验证一下效果:

首先,从官网下载python3.4的版本,然后编写一行代码验证一下打印字典的所有key。查看打印出来的key的顺序:

Python3.6以下版本:(以3.4版本为例)

图片

图片

你该不会以为只有使用keys()函数是无序的吧:

图片

从上图可以看出,分别在cmd窗口和pycharm中打印字典的key值,发现打印的顺序每次重新在一个新的窗口运行,打印的顺序都不一致。并且pycharm中会显示,python3.4的版本在pycharm中已经不再支持了。

接下来再看下python3.6以上版本的效果:(以3.9版本为例)

图片

图片

图片

从上图可以看出,在新的版本中,python针对key的存储已经变为有序,在遍历和打印的时候,会按照存储的顺序进行取值。

再补充一点:之前介绍到,在字典中,key是唯一的。这里并不是说写了不唯一的key就会报错,只是会用后面的key和value去覆盖前面的key和value。

a = {'a': 1, 'b': 2, 'b': 3}   # 在运行的时候不会报错

图片

到此这篇关于Python中的字典到底是有序的吗的文章就介绍到这了,更多相关Python字典有序内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python环境安装配置实用的提示

    Python环境安装配置实用的提示

    想要使用Python语言编写程序,我们必须下载Python安装包并配置Python环境,这篇文章主要给大家介绍了关于Python环境安装配置实用提示的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-11-11
  • Python使用multiprocessing如何实现多进程

    Python使用multiprocessing如何实现多进程

    这篇文章主要介绍了Python使用multiprocessing如何实现多进程问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • Python+Matplotlib+LaTeX玩转数学公式

    Python+Matplotlib+LaTeX玩转数学公式

    这篇文章主要为大家介绍了如何在Matplotlib中使用LaTeX 公式和符号以及Python如何生成LaTeX数学公式。文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下
    2022-02-02
  • Python 计算机视觉编程进阶之OpenCV 图像锐化及边缘检测

    Python 计算机视觉编程进阶之OpenCV 图像锐化及边缘检测

    计算机视觉这种技术可以将静止图像或视频数据转换为一种决策或新的表示。所有这样的转换都是为了完成某种特定的目的而进行的,本篇我们来学习下如何对图像进行锐化处理以及如何进行边缘检测
    2021-11-11
  • Python自定义函数定义,参数,调用代码解析

    Python自定义函数定义,参数,调用代码解析

    这篇文章主要介绍了Python自定义函数定义,参数,调用代码解析,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • Python scikit-learn 做线性回归的示例代码

    Python scikit-learn 做线性回归的示例代码

    本篇文章主要介绍了Python scikit-learn 做线性回归的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • Python Process创建进程的2种方法详解

    Python Process创建进程的2种方法详解

    这篇文章主要介绍了Python Process创建进程的2种方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • Python Selenium网页自动化利器使用详解

    Python Selenium网页自动化利器使用详解

    这篇文章主要为大家介绍了使用Python Selenium实现网页自动化示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • Django实现发送邮件功能

    Django实现发送邮件功能

    这篇文章主要介绍了Django实现发送邮件功能,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-07-07
  • python简单实现矩阵的乘,加,转置和逆运算示例

    python简单实现矩阵的乘,加,转置和逆运算示例

    这篇文章主要介绍了python简单实现矩阵的乘,加,转置和逆运算,结合实例形式分析了Python针对矩阵的乘,加,转置和求逆等运算相关实现技巧,需要的朋友可以参考下
    2019-07-07

最新评论