在Python中,set
是一个无序的不重复元素序列。它支持一些基本的操作,如添加、删除元素以及集合之间的数学运算(如并集、交集等)。以下是一些常见的set
类型操作:
- 创建集合
使用set()
构造函数或大括号{}
可以创建一个空集合。也可以通过将一个可迭代对象(如列表、元组等)传递给set()
构造函数来创建一个包含特定元素的集合。
# 创建空集合 s = set() # 或者 s = {} # 从列表创建集合 lst = [1, 2, 3, 4, 5] s = set(lst)
- 添加元素
使用add()
方法可以向集合中添加一个元素。如果元素已经存在于集合中,则不会进行任何操作。
s = {1, 2, 3} s.add(4) print(s) # 输出: {1, 2, 3, 4}
- 删除元素
使用remove()
方法可以从集合中删除一个元素。如果元素不存在于集合中,则会引发一个KeyError
。
s = {1, 2, 3, 4} s.remove(3) print(s) # 输出: {1, 2, 4}
此外,还可以使用discard()
方法删除一个元素,但如果元素不存在于集合中,则不会进行任何操作。
s = {1, 2, 4} s.discard(3) # 不会引发错误,但不会有任何效果 print(s) # 输出: {1, 2, 4}
- 集合运算
Python中的集合支持多种数学运算,如并集、交集、差集和对称差集等。
* 并集:`union()`或`|`操作符
* 交集:`intersection()`或`&`操作符
* 差集:`difference()`或`-`操作符
* 对称差集:`symmetric_difference()`或`^`操作符
s1 = {1, 2, 3} s2 = {2, 3, 4} # 并集 s_union = s1.union(s2) # 或者 s_union = s1 | s2 print(s_union) # 输出: {1, 2, 3, 4} # 交集 s_intersect = s1.intersection(s2) # 或者 s_intersect = s1 & s2 print(s_intersect) # 输出: {2, 3} # 差集 s_diff = s1.difference(s2) # 或者 s_diff = s1 - s2 print(s_diff) # 输出: {1} # 对称差集 s_sym_diff = s1.symmetric_difference(s2) # 或者 s_sym_diff = s1 ^ s2 print(s_sym_diff) # 输出: {1, 4}
这些是Python中set
类型的一些基本操作。请注意,集合是无序的,因此它们的元素没有特定的顺序。