gpt4 book ai didi

python - .get 和字典

转载 作者:太空宇宙 更新时间:2023-11-04 06:11:21 25 4
gpt4 key购买 nike

我是一名新的 Python 程序员,我正在阅读字典的 .get 方法,所以我尝试自己使用它。我尝试了一些非常简单的代码:

h = dict()
h.get('a', 1)
print (h)

解释器只返回:

{}

我知道 .get 方法在找不到您要求的键时会返回您提供的默认值,但它真的会在字典中创建新键和存储桶吗?如果是这样,为什么我的代码不返回新项目?谢谢

最佳答案

不,如果不存在,get 不会向字典添加条目。它不做任何修改。

>>> h = dict()
>>> h.get('a', 1)
1
>>> h
{}

从字典读取时,[] 也是如此;它会为不存在的键抛出错误。这与 C++ 不同,在 C++ 中,[] 将添加条目(如果条目不存在的话)。

>>> h['a']
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'a'
>>> h
{}

但是要知道 Python 可以区分读取和写入。分配给一个不存在的键将创建它,即使读取一个不存在的键会引发异常。

>>> h['a'] = 1
>>> h
{'a': 1}

关于python - .get 和字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18601254/

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