在 Python 中,集合(Set)是一种内置的数据类型,用于存储不重复的元素集合。集合中的元素必须是不可变(immutable)的,例如整数、浮点数、字符串、元组等,但是集合本身是可变的,这意味着你可以添加或删除其中的元素。
以下是集合的一些主要特点和用途:
- 无序性:集合中的元素没有固定的顺序,因此不能通过索引来访问。
- 唯一性:集合中的元素是唯一的,不允许有重复的元素。如果你尝试添加一个已经存在的元素,集合将保持不变。
- 去重:由于集合的唯一性,它经常被用来去除序列中的重复元素。
- 数学集合操作:集合支持并集(union)、交集(intersection)、差集(difference)和对称差集(symmetric difference)等数学集合操作。
下面是一些集合的基本操作示例:
# 创建集合
set1 = {1, 2, 3, 4, 5}
set2 = {4, 5, 6, 7, 8}
# 添加元素
set1.add(6) # set1 现在是 {1, 2, 3, 4, 5, 6}
# 删除元素
set1.remove(6) # set1 现在回到 {1, 2, 3, 4, 5}
# 计算两个集合的并集
union_set = set1 | set2 # 或者使用 union_set = set1.union(set2)
# 计算两个集合的交集
intersection_set = set1 & set2 # 或者使用 intersection_set = set1.intersection(set2)
# 计算两个集合的差集
difference_set = set1 - set2 # 或者使用 difference_set = set1.difference(set2)
# 计算两个集合的对称差集
symmetric_difference_set = set1 ^ set2 # 或者使用 symmetric_difference_set = set1.symmetric_difference(set2)
# 检查一个元素是否在集合中
print(3 in set1) # 输出 True
集合非常适合于需要进行快速成员检查、去重和执行集合理论操作的场景。由于集合内部实现基于哈希表,这些操作通常非常高效。