📜  Python集(1)

📅  最后修改于: 2023-12-03 15:34:32.732000             🧑  作者: Mango

Python集

Python集是程序员必备的三个Python集合模块之一,它提供了用来操作无序、不重复元素集合的数据类型。本文将介绍Python集的基本概念及其操作方法。

Python集基本概念

Python集可以看作是一个无序、不重复元素的集合,类似于数学中的集合。每个元素都是唯一的,没有顺序。

Python集是用一对大括号 {} 创建的。在大括号内,各个元素之间用英文逗号隔开。

my_set = {1, 2, 3}

当然,也可以使用 Python 的内置函数 set() 来创建集合。

my_set = set([1, 2, 3])

注意,创建空集合要使用 set() 而不能使用 {},因为 {} 用来创建空字典。

Python集操作方法

Python集支持常见的集合操作,例如并集、交集、差集等。下面将介绍 Python 集合的常见操作方法。假设有两个 Python 集合 AB

并集

并集是指包含两个集合中所有元素的集合。可以使用 | 运算符或 union() 方法来获得两个集合的并集。

A = {1, 2, 3}
B = {3, 4, 5}
C = A | B
# or
C = A.union(B)
交集

交集是指包含两个集合中共同元素的集合。可以使用 & 运算符或 intersection() 方法来获得两个集合的交集。

A = {1, 2, 3}
B = {3, 4, 5}
C = A & B
# or
C = A.intersection(B)
差集

差集是指包含一个集合中没有另一个集合中的元素的集合。可以使用 - 运算符或 difference() 方法来获得两个集合的差集。

A = {1, 2, 3}
B = {3, 4, 5}
C = A - B
# or
C = A.difference(B)
对称差集

对称差集是指包含两个集合中不共有的元素的集合。可以使用 ^ 运算符或 symmetric_difference() 方法来获得两个集合的对称差集。

A = {1, 2, 3}
B = {3, 4, 5}
C = A ^ B
# or
C = A.symmetric_difference(B)
子集和超集

子集是指一个集合中的所有元素都在另一个集合中。可以使用 issubset() 方法来判断一个集合是否是另一个集合的子集。

A = {1, 2, 3}
B = {1, 2}
print(B.issubset(A))  # True

超集是指一个集合包含另一个集合的所有元素。可以使用 issuperset() 方法来判断一个集合是否是另一个集合的超集。

A = {1, 2, 3}
B = {1, 2}
print(A.issuperset(B))  # True
添加和删除元素

可以使用 add() 方法向一个集合中添加元素。

my_set = {1, 2, 3}
my_set.add(4)

可以使用 remove()discard() 方法来删除一个集合中的元素。它们之间的区别在于,如果元素不在集合中,remove() 方法会抛出 KeyError 异常,而 discard() 方法不会。

my_set = {1, 2, 3}
my_set.remove(2)
# or
my_set.discard(2)
总结

本文介绍了 Python 集合的基本概念和常见操作方法,包括了并集、交集、差集、对称差集、子集和超集、添加和删除元素。掌握了这些知识,可以更加方便地使用 Python 中的集合类型。