python - 使用第二个字典中的数据丰富 Python 字典
问题描述
提供 2 个 Python 字典,例如
a1 = {'a': 2, 'b': 3, 'c': 1, 'e': {'f': 6, 'h': {'j': 3}}}
a2 = {'a': 2, 'c': 2, 'd': 4, 'e': {'f': 6, 'g': 8, 'h': {'i': 10}}}
我需要用 a2 中缺少的任何值更新 a1。缺少的键作为列表中的列表给出,即[['d'], ['e', 'g'], ['e', 'h', 'i']]
. 最后一项表示您正在向 a1 添加一个嵌套项。解决此问题的最有效方法是什么?
注意:
- 该
dict.update()
方法不起作用,因为它覆盖了现有的键a1
- 丢失键的输出来自deepdiff包,我用它来获取两个字典之间的差异
预期产出
{'a': 2, 'b': 3, 'c': 1, 'e': {'f': 6, 'g': 8, 'h': {'j': 3, 'i': 10}}, 'd': 4}
解决方案
推荐阅读
- javascript - 为什么单击清除后表单不重置(结果的所有字段和 div)?
- excel - 在工作表之间复制和粘贴
- python - Zip 字典和列表匹配日期
- c# - 如何在 C# 上使用 Costum 对象创建 arrayList
- r - 带有 mutate 和 ifelse 的新列,但在 R 中保留 NA
- c++ - 我正在尝试使用向量创建一个圆形数组,是否有手册可以完成此操作?
- html - 导航链接应在滚动时为特定部分激活
- angular - 在渲染模板之前等待两个 observables(包括失败的一个)
- laravel - laravel addSelectRaw() - 如何在 addSelect() 中绑定变量?
- java - Spring Security 在 REST 控制器上进行单元测试时导致问题