在Python中,set
是一个非常有用的数据类型,它可以用来存储不重复的元素,并且支持集合运算。下面是一些基本的集合运算的例子:
你可以使用大括号 {}
或者 set()
函数来创建一个集合。
# 使用大括号创建集合
s1 = {1, 2, 3, 4, 5}
# 使用set()函数创建集合
s2 = set([1, 2, 3, 4, 5])
使用 add()
方法可以向集合中添加一个元素。
s1.add(6)
print(s1) # 输出: {1, 2, 3, 4, 5, 6}
注意:如果你试图添加一个已经存在于集合中的元素,Python将不会报错,但也不会有任何效果。 3. 删除元素
使用 remove()
方法可以从集合中删除一个元素。如果元素不存在,remove()
方法会引发一个 KeyError
。
s1.remove(6)
print(s1) # 输出: {1, 2, 3, 4, 5}
为了避免 KeyError
,你可以使用 discard()
方法,它在元素不存在时不会有任何效果。
s1.discard(6) # 没有任何效果,因为6已经被移除了
Python的集合支持多种运算,包括并集、交集、差集和对称差集。
* 并集(Union): 使用 `|` 运算符或者 `union()` 方法。
* 交集(Intersection): 使用 `&` 运算符或者 `intersection()` 方法。
* 差集(Difference): 使用 `-` 运算符或者 `difference()` 方法。
* 对称差集(Symmetric Difference): 使用 `^` 运算符或者 `symmetric_difference()` 方法。
示例代码:
s1 = {1, 2, 3, 4, 5}
s2 = {4, 5, 6, 7, 8}
# 并集
print(s1 | s2) # 输出: {1, 2, 3, 4, 5, 6, 7, 8}
print(s1.union(s2)) # 输出: {1, 2, 3, 4, 5, 6, 7, 8}
# 交集
print(s1 & s2) # 输出: {4, 5}
print(s1.intersection(s2)) # 输出: {4, 5}
# 差集
print(s1 - s2) # 输出: {1, 2, 3}
print(s1.difference(s2)) # 输出: {1, 2, 3}
# 对称差集
print(s1 ^ s2) # 输出: {1, 2, 3, 6, 7, 8}
print(s1.symmetric_difference(s2)) # 输出: {1, 2, 3, 6, 7, 8}
这些就是Python中集合的基本操作和集合运算。记住,集合是无序的,所以它们的元素没有特定的顺序。