gpt4 book ai didi

python - 有没有办法使用另一个字典在 Python 字典上设置多个默认值?

转载 作者:太空狗 更新时间:2023-10-29 20:40:14 25 4
gpt4 key购买 nike

假设我有两个 Python 指令:

mydict = { 'a': 0 }

defaults = {
'a': 5,
'b': 10,
'c': 15
}

我希望能够使用 defaults 中的默认值扩展 mydict,这样 'a' 保持不变但 'b' 和 'c' 被填充我知道 dict.setdefault()dict.update() ,但每个只做我想要的一半 - 使用 dict.setdefault(),我必须遍历 defaults 中的每个变量;但是对于 dict.update()defaults 将清除 mydict 中任何预先存在的值。

是否有一些我没有发现的内置于 Python 中的功能可以做到这一点?如果没有,是否有比这更 Pythonic 的方式来编写循环以重复调用 dict.setdefaults():

for key in defaults.keys():
mydict.setdefault(key, defaults[key])

上下文:我正在用 Python 编写一些数据来控制如何解析 XML 树。每个节点都有一个字典(即如何处理每个节点),我宁愿我写的数据是稀疏的,但用默认值填充。示例代码只是一个示例……实际代码在默认字典中有更多的键/值对。

(我意识到这整个问题只是一个小问题,但它一直困扰着我,所以我想知道是否有更好的方法来做到这一点,但我不知道。)

最佳答案

你不能让 mydict 成为 default 的副本,那样的话,mydict 就会有所有正确的值开始吗?

mydict = default.copy()

关于python - 有没有办法使用另一个字典在 Python 字典上设置多个默认值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/849806/

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