跳到主要内容

Python 集合 isdisjoint() 方法

isdisjoint() 方法如果两个集合之间没有任何共同项,即它们是不相交的,则返回 True。否则返回 False

示例

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

# 检查集合 A 和集合 B 是否不相交
print(A.isdisjoint(B))

# 输出: True

isdisjoint() 语法

isdisjoint() 方法的语法是:

A.isdisjoint(B)

这里,A 和 B 是两个集合。

isdisjoint() 参数

isdisjoint() 方法接受单个参数:

  • B - 与集合 A 进行不相交操作的集合

我们也可以传递迭代器,如列表、元组、字典或字符串。在这种情况下,isdisjoint() 首先将迭代器转换为集合,然后检查它们是否不相交。

isdisjoint() 返回值

isdisjoint() 方法返回:

  • True 如果集合 A 和集合 B 不相交
  • False 如果集合 A 和集合 B 相交

示例 1:Python Set 不相交()

A = {1, 2, 3}
B = {4, 5, 6}
C = {6, 7, 8}

print('A 和 B 是不相交的:', A.isdisjoint(B))
print('B 和 C 是不相交的:', B.isdisjoint(C))

输出

A 和 B 是不相交的: True
B 和 C 是不相交的: False

在上面的示例中,我们使用了 isdisjoint() 来检查集合 A、B 和 C 是否互不相交。

集合 A 和 B 互不相交,因为它们没有任何共同项。因此,它返回了 True。集合 B 和 C 有一个共同项,6。所以方法返回 False

示例 2:使用其他迭代器作为参数的 isdisjoint()

# 创建集合 A
A = {'a', 'e', 'i', 'o', 'u'}

# 创建列表 B
B = ['d', 'e', 'f']

# 创建两个字典 C 和 D
C = {1 : 'a', 2 : 'b'}
D = {'a' : 1, 'b' : 2}

# 使用集合和列表进行 isdisjoint()
print('A 和 B 是不相交的:', A.isdisjoint(B))

# 使用集合和字典进行 isdisjoint()
print('A 和 C 是不相交的:', A.isdisjoint(C))
print('A 和 D 是不相交的:', A.isdisjoint(D))

输出

A 和 B 是不相交的: False
A 和 C 是不相交的: True
A 和 D 是不相交的: False

在上面的示例中,我们将列表和字典作为 isdisjoint() 方法的参数。集合 A 和列表 B 有一个共同项 'a',因此它们不是不相交的集合。

集合 A 中的项 'a' 和字典 D 中的键 'a' 是共同的。所以它们不是不相交的集合。

然而,A 和字典 D 是不相交的,因为字典的值不会与集合项进行比较。