我已经在Python3.8中加载了两个json文件,并且我需要根据条件合并这两个文件。
Obj1 = [{'account': '223', 'colr': '#555555', 'hash': True},
{'account': '134', 'colr': '#666666', 'hash': True},
{'account': '252', 'colr': '#777777', 'hash': True}]
Obj2 = [{'sn': 38796, 'code': 'df', 'id': 199, 'desc': 'jex - #777777- gg2349.252'},
{'sn': 21949, 'code': 'se', 'id': 193, 'desc': 'jex - #555555 - gf23569'},
{'sn': 21340, 'code': 'se', 'id': 3, 'desc': 'jex - #666666 - gf635387'}]
# What I am trying to get
Obj3 = [{'sn': 38796, 'code': 'df', 'id': 199, 'desc': 'jex - #777777- gg2349.252', 'account': '252', 'colr': '#777777', 'hash': True},
{'sn': 21949, 'code': 'se', 'id': 193, 'desc': 'jex - #555555 - gf23569', 'account': '223', 'colr': '#555555', 'hash': True},
{'sn': 21340, 'code': 'se', 'id': 3, 'desc': 'jex - #666666 - gf635387', 'account': '134', 'colr': '#666666', 'hash': True}]
我已经尝试过可以通过追加,扩展等收集SO上的所有内容,但是我在条件上有所欠缺。
我需要能够追加元素Obj1
,以Obj2
根据条件在他们正确的位置,如果colr
的Obj1
中提到desc
的Obj2
应该是整个元素从追加Obj1
到的相关元素Obj2
。或者创建一个新的Obj3
,我可以从中打印这些更新的值。
我已经试过看着迄今追加JSON对象,追加JSON对象嵌套列表,追加JSON对象,以现有的JSON对象和其他几个人也没有帮助。
希望这有意义,谢谢
像这样简单的事情会起作用。
for i in range(len(Obj1)):
for j in range(len(Obj2)):
if Obj1[i]['colr'] in Obj2[j]['desc']:
Obj1[i].update(Obj2[j])
print(Obj1)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句