我是一个有用的助手,可以为您提供翻译。以下是您需要翻译的内容:
他们需要被合并,以便输出结果如下所示。
我正在尝试合并两个 Python 中的 dict
,它们可能相同或者其中一个信息少得多。
例如:
master = {"a": 5564, "c": [{"d2":6}]}
daily = { "a": 795, "b": 1337, "c": [{"d1": 2,"d2": 2,"d3": [{"e1": 4,"e2": 4}]}]}
他们需要被合并,以便输出结果如下所示。
master = { "a": 6359, "b": 1337, "c": [{"d1": 2,"d2": 8,"d3": [{"e1": 4,"e2": 4}]}]}
虽然我只得到了null的返回值,但我还是尝试了一下。可能是我漏掉了什么或者完全错了。我就是想不出来。任何帮助都将不胜感激。谢谢。
def merge(master,daily):
for k, v in daily.items():
if isinstance(daily[k],list):
key_check = keyCheck(k, master)
if key_check:
merge(master[k],daily[k])
else :
master[k] = daily[k]
else :
if keyCheck(k, master):
master[k] += daily[k]
else :
master[k] = daily[k]
< p > keyCheck
只检查字典中是否有该键,因此不会引发错误。< /p >
master
和daily
是字典类型,这里的每个值都是字符串或列表,并且每个列表恰好只有一个字典项吗?你确定这将被遵循,因此不需要进行错误检查吗? - Rory Daulton