这个问题在这里已经有了答案:
Why does updating one dictionary object affect other?
(1 个回答)
3年前关闭。
我在将键值对添加到嵌套字典时遇到了一些麻烦。新对似乎被添加到外部字典中的所有条目中,而不仅仅是我想要的嵌套字典。
下面是一个例子:
mykeys = ['key1', 'key2', 'key3']
mydictionary = dict.fromkeys(mykeys, {})
mydictionary['key1']['subkey1'] = 'value1'
mydictionary
我期待看到以下内容,仅将“subkey1”添加到“key1”字典中:
{'key1': {'subkey1': 'value1'},
'key2': {},
'key3': {}}
相反,它将 subkey1/value1 对添加到外部字典的每个元素中:
{'key1': {'subkey1': 'value1'},
'key2': {'subkey1': 'value1'},
'key3': {'subkey1': 'value1'}}
为什么会这样,我该如何重写代码来修复这个错误?
最佳答案
mydictionary['key1'] = {'subkey1': 'value1'}
关于python - 将键值对添加到嵌套字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52250121/