Python的集合(Set)提供了一系列强大的内置方法,帮助开发者进行数据处理,如元素添加、删除、集合运算等。本文将系统介绍这些方法,并提供示例代码供参考。
1. Python集合(Set)方法速查表
方法 | 运算符(若有) | 描述 |
---|---|---|
add() | - | 向集合中添加元素 |
clear() | - | 清空集合 |
copy() | - | 返回集合的副本 |
difference() | - | 返回两个集合的差集 |
difference_update() | -= | 从原集合中移除出现在另一个集合中的元素 |
discard() | - | 移除指定元素(不存在不会报错) |
intersection() | & | 返回两个集合的交集 |
intersection_update() | &= | 只保留出现在另一个集合中的元素 |
isdisjoint() | - | 判断两个集合是否无交集 |
issubset() | <= / < | 判断当前集合是否为另一个集合的子集 |
issuperset() | >= / > | 判断当前集合是否包含另一个集合 |
pop() | - | 随机删除一个元素 |
remove() | - | 移除指定元素(不存在会报错) |
symmetric_difference() | ^ | 返回两个集合的对称差集 |
symmetric_difference_update() | ^= | 对称差集运算并更新原集合 |
union() | | | 返回两个集合的并集 |
update() | |= | 合并另一个集合到当前集合 |
2. Python集合(Set)方法使用示例
2.1 添加与删除元素
thisset = {"pingguo", "xiangjiao", "yingtao"}
# 添加元素
thisset.add("juzi")
print(thisset)
# 删除元素(如果元素不存在,discard()不会报错)
thisset.discard("xiangjiao")
print(thisset)
# 使用 remove(),元素不存在时会报错
# thisset.remove("liulian") # KeyError: 'liulian'
2.2 计算集合的差集
set1 = {"pingguo", "xiangjiao", "yingtao"}
set2 = {"pingguo", "mangguo"}
# 返回 set1 相对于 set2 的差集
set3 = set1.difference(set2)
print(set3) # 输出: {'xiangjiao', 'yingtao'}
2.3 计算集合的交集
set1 = {"pingguo", "xiangjiao", "yingtao"}
set2 = {"pingguo", "mangguo"}
# 计算交集
set3 = set1.intersection(set2)
print(set3) # 输出: {'pingguo'}
2.4 计算集合的并集
set1 = {"pingguo", "xiangjiao"}
set2 = {"mangguo", "yingtao"}
# 计算并集
set3 = set1.union(set2)
print(set3) # 输出: {'pingguo', 'xiangjiao', 'mangguo', 'yingtao'}
2.5 判断集合是否为子集或超集
set1 = {"pingguo", "xiangjiao"}
set2 = {"pingguo", "xiangjiao", "yingtao"}
print(set1.issubset(set2)) # True
print(set2.issuperset(set1)) # True
3. 相关Python集合(Set)文章推荐
- Python集合(Set)数据类型完全指南
- Python集合(Set)元素添加与更新方法详解
- Python集合(Set)元素删除方法详解
- 如何使用for循环遍历Python集合(Set)
- Python集合(Set)合并与交集、差集运算详解