把一个集合中两个字段相同的值放在一个集合
时间: 2024-05-13 21:15:56 浏览: 6
可以使用Python中的字典来实现这个功能。具体的实现方法如下:
1. 遍历原始集合中的每个元素,取出其中需要比较的两个字段的值,假设这两个字段分别为field1和field2。
2. 把这两个字段的值作为一个元组作为字典的键,原始集合中的元素作为字典的值。
3. 如果遇到相同的键,则把对应的值添加到同一个集合中。
下面是一个示例代码:
```
original_set = [{ "field1": 1, "field2": 2, "value": "a" },
{ "field1": 2, "field2": 3, "value": "b" },
{ "field1": 1, "field2": 2, "value": "c" },
{ "field1": 4, "field2": 5, "value": "d" }]
result_dict = {}
for item in original_set:
key = (item['field1'], item['field2'])
if key in result_dict:
result_dict[key].append(item)
else:
result_dict[key] = [item]
result_set = []
for key, value in result_dict.items():
result_set.append(value)
print(result_set)
```
输出结果如下:
```
[[{'field1': 1, 'field2': 2, 'value': 'a'}, {'field1': 1, 'field2': 2, 'value': 'c'}], [{'field1': 2, 'field2': 3, 'value': 'b'}], [{'field1': 4, 'field2': 5, 'value': 'd'}]]
```
可以看到,原始集合中第一个和第三个元素的field1和field2的值相同,它们被放在了同一个集合中。