Python中的集合是一种无序、可变的容器,其中包含不重复的元素。集合是由一对花括号 {} 括起来的元素,元素之间使用逗号分隔。
set1 = {1, 2, 3, 4, 5}
set2 = {'a', 'b', 'c', 'd', 'e'}
set3 = {"apple", "banana", "cherry"}集合与列表和元组非常相似,但是集合不允许重复元素,并且没有索引。我们可以使用in关键字判断一个元素是否在集合中,并且可以使用set()函数将列表或元组转换为集合。
set4 = {1, 2, 3, 1, 2, 3} # 集合会自动去重
print(set4) #输出 {1, 2, 3}
list1 = [1, 2, 3, 4]
set5 = set(list1) # list转set
print(set5) # 输出 {1, 2, 3, 4}
tuple1 = (1, 2, 3, 4)
set6 = set(tuple1) # tuple转set
print(set6) # 输出 {1, 2, 3, 4}集合中常用的操作包括:
- 添加元素
- 删除元素
- 集合运算
添加元素可以使用 add() 或者 update() 方法,其中add()方法添加一个元素,update()方法可以添加一个列表、元组或集合。
set7 = {1, 2, 3}
set7.add(4) # 添加一个元素
print(set7) # 输出 {1, 2, 3, 4}
set8 = {1, 2, 3}
set8.update([4, 5, 6]) # 添加一个列表
print(set8) # 输出 {1, 2, 3, 4, 5, 6}删除元素可以使用 remove() 或者 discard() 方法。其中remove()方法删除指定元素,如果不存在则抛出异常,而discard()方法删除指定元素,但是即使元素不存在也不会抛出异常。
set9 = {1, 2, 3, 4, 5}
set9.remove(4) # 删除一个元素
print(set9) # 输出 {1, 2, 3, 5}
set10 = {1, 2, 3, 4, 5}
set10.discard(6) # 删除一个不存在的元素
print(set10) # 输出 {1, 2, 3, 4, 5}集合运算包括并集、交集、差集和对称差集。可以使用union()、intersection()、difference()和symmetric_difference()方法实现这些运算。
set11 = {1, 2, 3, 4}
set12 = {3, 4, 5, 6}
print(set11.union(set12)) # 并集 {1, 2, 3, 4, 5, 6}
print(set11.intersection(set12)) # 交集 {3, 4}
print(set11.difference(set12)) # 差集 {1,2}
print(set11.symmetric_difference(set12)) # 对称差集 {1, 2, 5, 6}Python中的集合是非常有用的数据结构,它可以帮助我们很方便地进行元素去重、集合运算等操作,使用起来也非常简单。