Python 中的 issubset() 函数


在本文中,我们将学习 Python 标准库中提供的 issubset() 函数的实现和用法。

当一个集合的所有元素都存在于另一个集合(作为参数传递)中时,issubset() 方法返回布尔值 True,否则返回布尔值 False。

在下图中,B 是 A 的子集。如果 A 和 B 是相同的集合,则意味着 A 是 B 的真子集。这意味着这两个集合包含相同的元素。

语法

<set 1>.issubset(<set 2>)

返回值

boolean True/False

现在让我们来看一个示例来理解这个概念。

示例

 在线演示

A = {'t','u','t','o','r','i','a','l'}
B = {'t','u','t'}
C = {'p','o','i','n','t'}
print(B.issubset(A))
print(B.issubset(C))
A=set(str(A)+str(C))
print(C.issubset(A))

输出

True
False
True

解释

这里检查了 B 的所有元素是否都包含在 A 中,结果为真。类似地,下一个语句会产生输出。

现在我们通过使用类型转换将两个集合连接起来,强制使其成为子集,如下一条语句所示。

现在让我们看看如果我们指定除集合之外的其他类型的可迭代对象并将其作为参数传递会发生什么。

示例

 在线演示

A = ['t','u','t','o','r','i','a','l']
B = {'t','u','t'}
C = ('p','o','i','n','t')
D = {'p','o','i','n','t'}
print(B.issubset(A))
print(B.issubset(C))
A=set(str(A)+str(C))
print(D.issubset(A))

输出

True
False
True

解释

这里我们将元组、字符串和列表可迭代对象传递给 issubset() 函数。这些类型会隐式转换为集合类型,以便获得所需的输出。

我们还必须注意,函数外部的参数必须始终为 <set> 类型,以便解释器知道比较的是两个集合,而不是其他任何类型。

结论

在本文中,我们学习了如何在 Python 中使用 isubset() 函数,以及可以使用哪些类型的参数与该函数进行比较。

更新于: 2019年8月29日

177 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告