You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何将两个字典中data字段的列表元素合并为一个新列表

实现方法

你可以直接用Python的列表拼接或者extend()方法完成需求,两种常用方式如下:

方法1:直接列表拼接(生成新列表,不修改原字典数据)

直接对两个data字段的列表做加法运算即可,代码最简单:

item1 = {'data': [{'a': 11, 'b': 22}, {'c': 33, 'd': 44}]}
item2 = {'data': [{'e': 55, 'f': 66}, {'g': 77, 'h': 88}]}

result = item1['data'] + item2['data']
print(result)

运行输出和你预期的结果完全一致:

[{'a': 11, 'b': 22}, {'c': 33, 'd': 44}, {'e': 55, 'f': 66}, {'g': 77, 'h': 88}]

方法2:用extend()方法追加(适合批量处理多个字典)

如果后续还有更多类似结构的字典需要合并,用循环加extend()的方式可拓展性更强:

item1 = {'data': [{'a': 11, 'b': 22}, {'c': 33, 'd': 44}]}
item2 = {'data': [{'e': 55, 'f': 66}, {'g': 77, 'h': 88}]}

result = []
# 可以任意往下面的列表里新增需要合并的字典
for item in [item1, item2]:
    result.extend(item['data'])

print(result)

注意事项

上面两种方法都是浅拷贝,修改result里的字典元素会同步修改原item1、item2里的对应元素。如果你需要完全隔离新老列表,可以引入深拷贝:

from copy import deepcopy

item1 = {'data': [{'a': 11, 'b': 22}, {'c': 33, 'd': 44}]}
item2 = {'data': [{'e': 55, 'f': 66}, {'g': 77, 'h': 88}]}

result = []
for item in [item1, item2]:
    result.extend(deepcopy(elem) for elem in item['data'])

print(result)

内容的提问来源于stack exchange,提问作者kiran

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 07:15:02