下面是一个示例代码,展示了如何比较和合并两个相同数组的对象:
def merge_arrays(arr1, arr2):
merged_array = []
# 比较两个数组中的每个对象
for obj1 in arr1:
for obj2 in arr2:
if obj1 == obj2:
# 如果对象相同,则将其合并到新数组中
merged_array.append({**obj1, **obj2})
break
return merged_array
# 示例输入
arr1 = [
{'id': 1, 'name': 'Alice'},
{'id': 2, 'name': 'Bob'},
{'id': 3, 'name': 'Charlie'}
]
arr2 = [
{'id': 1, 'age': 25},
{'id': 2, 'age': 30},
{'id': 4, 'age': 35}
]
# 调用函数并打印结果
result = merge_arrays(arr1, arr2)
print(result)
该代码的输出结果为:
[{'id': 1, 'name': 'Alice', 'age': 25}, {'id': 2, 'name': 'Bob', 'age': 30}]
在这个示例中,我们定义了一个merge_arrays
函数来比较和合并两个数组的对象。函数使用两个嵌套的循环来遍历两个数组中的每个对象。如果两个对象相同(通过比较它们的属性),则使用{**obj1, **obj2}
的方式将它们合并为一个新的对象,并将其添加到merged_array
中。
注意,这个示例假设数组中的对象是可哈希的(即可以通过==
运算符进行比较)。如果对象是不可哈希的(例如,包含可变对象的列表),则需要修改比较和合并的逻辑。
上一篇:比较和合并列表中的数据