将键值对添加到嵌套字典中

时间:2018-09-10 01:56:12

标签: python python-3.x dictionary

在将键值对添加到嵌套字典时遇到了一些麻烦。新的对似乎正在添加到外部词典的所有条目中,而不仅仅是我想要的嵌套词典。

这是一个例子:

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'}}

为什么会这样,如何重新编写代码以解决此错误?

1 个答案:

答案 0 :(得分:0)

mydictionary['key1'] = {'subkey1': 'value1'}