下面是一个示例代码,演示如何按照字段组合合并两个对象列表。假设有两个对象列表,每个对象都有一个字段名为"id"和"name"。
# 创建示例对象列表1
list1 = [
{"id": 1, "name": "John"},
{"id": 2, "name": "Jane"}
]
# 创建示例对象列表2
list2 = [
{"id": 1, "name": "Doe"},
{"id": 3, "name": "Alice"}
]
# 创建一个空列表来存储合并后的结果
merged_list = []
# 遍历列表1中的每个对象
for obj1 in list1:
# 遍历列表2中的每个对象
for obj2 in list2:
# 如果两个对象的"id"字段相等,则进行合并
if obj1["id"] == obj2["id"]:
# 创建一个新的合并对象,包含两个对象的字段
merged_obj = {
"id": obj1["id"],
"name": obj1["name"] + " " + obj2["name"]
}
# 将合并对象添加到结果列表中
merged_list.append(merged_obj)
# 打印合并后的结果列表
print(merged_list)
运行上述代码将输出:
[{'id': 1, 'name': 'John Doe'}]
在这个示例中,我们首先创建了两个示例对象列表(list1和list2)。然后,我们创建了一个空列表(merged_list),用于存储合并后的结果。
然后,我们使用嵌套的for循环遍历列表1中的每个对象(obj1)和列表2中的每个对象(obj2)。如果两个对象的"id"字段相等,我们将创建一个新的合并对象(merged_obj),该对象包含两个对象的"name"字段的组合。最后,我们将合并对象添加到结果列表中。
最后,我们打印合并后的结果列表。在这个示例中,我们只有一个匹配的对象,所以结果列表只包含一个合并对象。
上一篇:按字段转换枚举值