假设我有以下要合并的JSON -公共数据键、值,如果两者都包含相同的id,则更新URL,但如果存在不同的id,则也将其添加到数组JSON中
def mergeDicts(*data):
merged = dict()
for dicts in data:
for d in dicts:
for k,v in d.items():
if not isinstance(v,list): v = [v]
merged[k] = list(set(merged.get(k,[]) + v))
return merged
虚拟数据
json1 = [{'id': 'demo1', 'url': ['data','data']}, {'id': 'demo2', 'url': ['data','data', 2]}]
json2 = [{'id': 'demo1', 'url': ['data','data1', 2]}]
期望输出
[
{'id': 'demo1', 'url': ['data','data1',2]},
{'id': 'demo2', 'url': ['data', 2]}
]
电流输出
{'id': ['demo1', 'demo2'], 'url': ['data', 2, 'data1']}
转载请注明出处:http://www.lsql.net/article/20230523/2119228.html