以下是一个示例代码,用于比较具有共同字段的两个数组,并将其推送到一个新的数组,并将相应的字段进行分组。
# 定义两个数组
array1 = [
{"id": 1, "name": "Alice"},
{"id": 2, "name": "Bob"},
{"id": 3, "name": "Charlie"}
]
array2 = [
{"id": 1, "age": 25},
{"id": 2, "age": 30},
{"id": 4, "age": 35}
]
# 创建一个新的数组用于存储结果
result_array = []
# 遍历第一个数组
for item1 in array1:
# 获取当前项的id
id1 = item1["id"]
# 遍历第二个数组
for item2 in array2:
# 获取当前项的id
id2 = item2["id"]
# 如果id匹配,则将两个项合并到新的字典中
if id1 == id2:
new_item = {**item1, **item2}
# 将新的字典添加到结果数组中
result_array.append(new_item)
# 根据相应的字段进行分组
grouped_array = {}
for item in result_array:
# 获取相应字段的值
field_value = item["name"]
# 如果字段值不存在于分组中,则创建一个新的列表
if field_value not in grouped_array:
grouped_array[field_value] = []
# 将项添加到相应的分组中
grouped_array[field_value].append(item)
# 打印结果
print(grouped_array)
这个示例代码会比较两个数组的"id"字段,如果匹配,则将两个项合并到一个新的字典中,并将新的字典添加到结果数组中。然后,根据"name"字段对结果数组进行分组,并将结果存储在一个字典中。最后,打印出分组后的结果。
上一篇:比较具有共同点的弧的角度