python字典更新方法扩展字典

python字典更新方法扩展字典,python,dictionary,data-structures,Python,Dictionary,Data Structures,因此,我在字典中使用dictionary,每次我尝试扩展child_dict时(我使用循环),只有最后一个迭代值持续存在,而之前的迭代值被过度写入 parent_dict = defaultdict(list) for getdata from datasource: # I generate 'child_dict' here parent_dict[parentDict_key] = child_dict 我试图使用.upda

因此,我在字典中使用dictionary,每次我尝试扩展child_dict时(我使用循环),只有最后一个迭代值持续存在,而之前的迭代值被过度写入

  parent_dict = defaultdict(list)
      for getdata from datasource:
            # I generate 'child_dict' here
            parent_dict[parentDict_key] = child_dict
我试图使用.update(child_dict)方法,但它给了我

   AttributeError: 'list' object has no attribute 'update'
我还尝试使用.append()方法,但它使父对象成为字典列表。
有没有更好的方法将新的子目录添加到我的父目录中,并在每次迭代期间扩展它?

如果您希望您的值是字典而不是列表,您应该使用:

parent_dict = defaultdict(dict)
而不是:

parent_dict = defaultdict(list)
然后生成:

parent_dict[parentDict_key][child_dict_key] = child_dict_value

“只有最后一个迭代值持续存在,而前一个迭代值被重写”。这不应该发生。请。因此,您希望项目是DICT,但您将其初始化为
defaultdict(list)
,默认情况下每个属性都是
list
(因此
更新
异常)。什么是父目录键?我看不到它在for循环中的变化。请向我们展示您如何在每次迭代中生成“child dict”,您是否首先从父dict检索到它?谢谢。这就是为什么无法使用.update()方法的原因。