python对两个集合/字典求交集、差集、并集
时间: 2024-10-22 13:09:00 浏览: 51
在Python中,可以使用内置的set数据类型以及一些集合相关的函数来处理集合(set)或字典(dict)。这里分别介绍如何求交集、差集和并集。
1. **交集(Intersection)**:对于两个集合,`intersection()`函数用于找出它们共有的元素。
```python
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
intersection = set1.intersection(set2)
print(intersection) # 输出: {3, 4}
```
2. **差集(Difference)**:`difference()` 函数用于获取第一个集合中不在第二个集合中的元素。
```python
difference = set1.difference(set2)
print(difference) # 输出: {1, 2}
```
3. **并集(Union)**:`union()` 或者 `|` 操作符用于合并两个集合的所有元素。
```python
union = set1.union(set2)
print(union) # 输出: {1, 2, 3, 4, 5, 6}
```
对于字典,虽然它们本身不是集合,但可以先将它们转化为集合,然后再进行上述操作。例如,如果你想找到两个字典中共有的键,可以先获取每个字典的键集(keys()),再做交集操作。
```python
dict1 = {'a': 1, 'b': 2, 'c': 3}
dict2 = {'b': 2, 'c': 4, 'd': 5}
keys_intersection = set(dict1.keys()).intersection(set(dict2.keys()))
print(keys_intersection) # 输出: {'b', 'c'}
```
注意,这仅适用于键的比较,而不涉及值的比较。
阅读全文