去重两个list中重复字段的对象
时间: 2024-04-08 08:11:34 浏览: 14
假设我们有两个列表 `list1` 和 `list2`,每个列表中都包含一个字典,其中某些字典具有相同的键值对。我们可以通过以下代码去重这些具有相同键值对的字典:
```python
list1 = [{'name': 'Alice', 'age': 25}, {'name': 'Bob', 'age': 30}, {'name': 'Charlie', 'age': 35}]
list2 = [{'name': 'Alice', 'age': 25}, {'name': 'David', 'age': 40}, {'name': 'Charlie', 'age': 35}]
# 找到两个列表中具有相同键值对的字典
duplicates = []
for dict1 in list1:
for dict2 in list2:
if dict1 == dict2:
duplicates.append(dict1)
# 从两个列表中删除重复字典
for duplicate in duplicates:
list1.remove(duplicate)
list2.remove(duplicate)
# 合并两个列表
merged_list = list1 + list2
```
在上面的代码中,我们首先通过嵌套循环找到两个列表中具有相同键值对的字典,并将它们存储在 `duplicates` 列表中。然后,我们遍历 `duplicates` 列表,并从原始列表中删除重复字典。最后,我们将两个列表合并到 `merged_list` 中。