淘先锋百科网

首页 1 2 3 4 5 6 7

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}

集合中常用的操作包括:

  1. 添加元素
  2. 删除元素
  3. 集合运算

添加元素可以使用 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中的集合是非常有用的数据结构,它可以帮助我们很方便地进行元素去重、集合运算等操作,使用起来也非常简单。