Python set集合基本操作

Python set集合最常用的操作是向集合中添加, 删除元素, 以及集合之间做交集, 并集, 差集等运算.

添加元素

使用add()方法向集合中添加元素, 语法结构为:

setName.add(element)

需要注意的是, 使用add()方法添加的元素, 只能是数字, 字符串, 元组或者布尔类型值, 不能添加列表, 字典, 集合这类可变类型的数据, 否则Python解释器会抛出TypeError异常.

删除元素

使用remove()方法从现有set集合中删除指定的元素, 语法结构为:

setName.remove(element)

需要注意的是, 如果被删除的元素本就不包含在集合中, 则此方法会引发异常.

clear()方法表示清空集合中的所有元素.

交集, 并集, 差集运算

集合最常做的操作就是进行交集, 并集,差集以及对称差集运算.

首先普及以下各个运算的含义.

../../_images/set.png

上图中有2个集合, 分别为set` = {1, 2, 3}set2 = {3, 4, 5}, 它们既有相同的元素, 也有不同元素. 以这两个集合为例, 分别做不同运算的结果如下表所示:

Python set集合运算
运算操作 运算符 含义 例子
交集 & 取两个集合公共的元素

>>> set1 & set2

{3}

并集 | 取两个集合全部的元素

>>> set1 | set2

{1, 2, 3, 4, 5}

差集 - 取一个集合中有另一个集合中没有的元素

>>> set1 - set2

{1, 2}

对称差集 ^ 取集合AB中不属于A&B的元素

>>> set1 ^ set2

{1, 2, 4, 5}