<p>为输出添加所需的格式总是好的。它就像您想要列出包含来自result1&;的数据的dict;结果2</p>
<p>鉴于—</p>
<pre><code>a = [{"result1":[{"1":"11"},{"11":"111"}]},{"result2":[{"2":"22"},{"22":"222"}]}]
b = [{"result1":[{"one":"eleven"},{"11":"111"}]},{"result2":[{"two":"twentytwo"},{"22":"222"}]}]
</code></pre>
<p>这是代码-</p>
<pre><code>desired_op = []
for index, item in enumerate(a):
inner_item = {}
for key, value in item.items():
#print (key, value + b[index][key])
inner_item[key] = value + b[index][key]
desired_op.append(inner_item)
print (desired_op)
[{'result1': [{'1': '11'}, {'11': '111'}, {'one': 'eleven'}, {'11': '111'}]}, {'result2': [{'2': '22'}, {'22': '222'}, {'two': 'twentytwo'}, {'22': '222'}]}]
</code></pre>
<p>如果您需要独特的项目,它将有点复杂-</p>
<pre><code>desired_op = []
for index, item in enumerate(a):
inner_item = {}
for key, value in item.items():
#print (key, value + b[index][key])
inner_item[key] = list({list(litem.keys())[0]:litem for litem in value + b[index][key]}.values())
desired_op.append(inner_item)
print (desired_op)
[{'result1': [{'1': '11'}, {'11': '111'}, {'one': 'eleven'}]}, {'result2': [{'2': '22'}, {'22': '222'}, {'two': 'twentytwo'}]}]
</code></pre>
<h2>对评论的后续行动</h2>
<p>简单的附加可以工作,但为此,您必须确保第二个列表中的第一个索引应该包含result1&;第二个索引应包含作为dict键的result2</p>
<p>例如(但这不会删除重复项)</p>
<pre><code>a[0]['result1'].extend(b[0]['result1'])
a[1]['result2'].extend(b[1]['result2'])
print(a)
[{'result1': [{'1': '11'}, {'11': '111'}, {'one': 'eleven'}, {'11': '111'}]}, {'result2': [{'2': '22'}, {'22': '222'}, {'two': 'twentytwo'}, {'22': '222'}]}]
</code></pre>
<p>如果您不确定索引在第二个列表中的位置,这将起作用-</p>
<pre><code>keys_mapping = {list(item.keys())[0]:index for index, item in enumerate(a)}
print (keys_mapping)
{'result1': 0, 'result2': 1}
for item in b:
key = list(item.keys())[0]
a[keys_mapping[key]][key].extend(item[key])
print (a)
[{'result1': [{'1': '11'}, {'11': '111'}, [{'one': 'eleven'}, {'11': '111'}]]}, {'result2': [{'2': '22'}, {'22': '222'}, [{'two': 'twentytwo'}, {'22': '222'}]]}]
</code></pre>