gpt4 book ai didi

具有理解力的 Python 字典键顺序

转载 作者:太空宇宙 更新时间:2023-11-04 09:48:12 27 4
gpt4 key购买 nike

我是第一次在字典里胡思乱想,突然出现了一些让我感到困惑的事情。使用两个列表创建一个新词典,关键部分的列表术语顺序似乎是错误的。这是我的代码:

list1 = ["a", "b", "c", "d"]
list2 = [5,3,7,3]
newDict = {list1[c]: number for c, number in enumerate(list2)}
print(newDict)

这给了我以下信息:

{'a': 5, 'd': 3, 'c': 7, 'b': 3}

为什么会这样?从列表中获取术语的“c”值肯定是从 0 开始的,那么为什么它不以相同的顺序创建包含字母的字典呢?

谢谢。

最佳答案

为了提高效率,传统的 Python 字典是无序的。如果你需要订单,那么你需要OrderedDict:

>>> from collections import OrderedDict
>>> newDict = OrderedDict((list1[c], number) for c, number in enumerate(list2))
>>> print(newDict)
OrderedDict([('a', 5), ('b', 3), ('c', 7), ('d', 3)])

In Python 3.7 ,使用新算法实现的普通 python 字典将被排序。在此之前,如果您需要订购,请使用 OrderedDict

关于具有理解力的 Python 字典键顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48980285/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com