gpt4 book ai didi

python - 在Python 3.2中向字典中添加字典

转载 作者:行者123 更新时间:2023-12-01 05:58:25 25 4
gpt4 key购买 nike

我正在尝试使用一条语句在字典中创建字典。如果 key 不存在,则应创建它。

我现在拥有的代码片段:

self.data[self.stringvar1.get()] = { date : (int(self.total.get()), int(self.resources.get())) }

这不会创建新 key ,而是覆盖 self.data,即使 stringvar1 不同。我尝试了几个选项,但找不到我想要的。我是否必须手动检查 key 是否存在,或者是否有一个简单的习惯用法?

最佳答案

一种选择是使 self.data 成为 collections.defaultdict(dict)。访问此 defaultdict 上不存在的键会自动为此键创建一个新字典,您只需使用

self.data[self.stringvar1.get()][date] = (
int(self.total.get()), int(self.resources.get()))

请注意,defaultdict 存在隐藏错误的风险,因为您永远不会遇到 KeyError。另一种方法是使用普通的 dictsetdefault() 方法:

self.data.setdefault(self.stringvar1.get(), {})[date] = (
int(self.total.get()), int(self.resources.get()))

关于python - 在Python 3.2中向字典中添加字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11538830/

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