【发布时间】:2016-09-15 04:44:37
【问题描述】:
我有一个要求,我需要创建字典对象,其中包含嵌入到列表对象中的重复键,如下所示:
[{ "key": "ABC" },{ "key": "EFG" } ]
我决定将一个顶级列表初始化为空,如 outer_list=[] 和一个占位符字典对象,如 dict_obj= {}。接下来,我继续使用以下步骤将元素添加到我的列表中:
- 使用
dict_obj["key"]="ABC"将{ "key": "ABC" }分配给dict_obj - 使用
outer_list.append(dict_obj)将此对象添加到列表中 - 使用
dict_obj.clear()刷新/弹出字典对象中的键/项 - 根据我的数据中键/项目组合的数量重复步骤 1 到 3
问题:outer_list 对象维护对原始 dict_obj 的引用,如果 dict_obj 被刷新或添加了新的键/项,它会相应地更改。所以最后,我最终得到了这个[{ "key": "EFG" },{ "key": "EFG" } ] 而不是[{ "key": "ABC" },{ "key": "EFG" } ]
如果可能,请指导我一些解决方法。
【问题讨论】:
标签: python list dictionary