假设我有以下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']}
看看这是否适合您:
输出
相关问题 更多 >
编程相关推荐