跳到主要内容

Python 集合 intersection() 方法

intersection() 方法返回一个新集合,其中包含所有集合的公共元素。

示例

A = {2, 3, 5}
B = {1, 3, 5}

# 计算 A 和 B 的交集
print(A.intersection(B))

# 输出: {3, 5}

Set intersection() 的语法

Python 中 intersection() 的语法是:

A.intersection(*other_sets)

intersection() 参数

intersection() 允许传递任意数量的参数(集合)。

注意: * 不是语法的一部分。它用于表示该方法允许传递任意数量的参数。

Intersection() 的返回值

intersection() 方法返回集合 A 与所有传递的集合(作为参数)的交集。

如果没有向 intersection() 传递参数,它将返回集合 (A) 的浅拷贝。

示例 1:Python Set intersection()

A = {2, 3, 5, 4}
B = {2, 5, 100}
C = {2, 3, 8, 9, 10}

print(B.intersection(A))
print(B.intersection(C))
print(A.intersection(C))

print(C.intersection(A, B))

输出

{2, 5}
{2}
{2, 3}
{2}

Set intersection() 的工作原理

两个或多个集合的交集是所有集合共有的元素组成的集合。例如:

A = {1, 2, 3, 4}
B = {2, 3, 4, 9}
C = {2, 4, 9, 10}

那么,
A∩B = B∩A ={2, 3, 4}
A∩C = C∩A ={2, 4}
B∩C = C∩B ={2, 4, 9}

A∩B∩C = {2, 4}

三个集合的交集

更多示例

A = {100, 7, 8}
B = {200, 4, 5}
C = {300, 2, 3}
D = {100, 200, 300}

print(A.intersection(D))
print(B.intersection(D))
print(C.intersection(D))
print(A.intersection(B, C, D))

输出

{100}
{200}
{300}
set()

示例 3:使用 & 运算符进行集合交集

你也可以使用 & 运算符找到集合的交集。

A = {100, 7, 8}
B = {200, 4, 5}
C = {300, 2, 3, 7}
D = {100, 200, 300}

print(A & C)
print(A & D)

print(A & C & D)

print(A & B & C & D)

输出

{7}
{100}
set()
set()