Javatpoint标志
Javatpoint标志

Python中的子集

一个子集是属于另一个集合的元素集合,称为“超集”.在Python中,子集可以用列表、元组或其他可迭代的

要检查子集是否包含在超集中,可以使用issubset设置对象的方法。

例子:

输出:

真正的

或者,您可以使用< =操作符检查一个集合是否是另一个集合的子集:

例子:

输出:

真正的

方法,除了检查子集是否包含在超集中之外,还可以使用intersection方法或&运算符,并使用union方法或|运营商

例子:

让我们举一个例子来说明Python中的子集和集合操作的概念:

输出:

False {2,3} {2,3} {1,2,3,4} {1,2,3,4}

在这个例子中,我们定义了两个集合A和B,并检查是否一个是一个子集B使用issubset方法。结果是因为不是集合中的所有元素一个也存在于set中B

接下来,我们找到十字路口A和B使用交点法,或者&运算符.结果就是集合{2,3},它表示两者共同的元素A和B

最后,我们找到了联盟A和B使用联合方法或|运营商.结果就是集合{1,2,3,4},它表示任意一个中存在的元素的完整集合A或B

例子:

Python代码查找特定的所有子集设置/列表给定的尺寸

方法可以查找给定大小的集合的子集itertoolsPython中的库。下面是如何使用组合函数的示例itertools求给定集合s的所有大小为k的子集:

输出:

[(1,2), (1,3), (1,4), (2,3), (2,4), (3,4)]

函数的作用是:返回一个迭代器,该迭代器生成集合中所有有大小的元素的可能组合k.在本例中,的子集大小2(1、2),(1、3),(4),(2、3),(2、4)和(3、4)

例子:

您可以使用map函数itertools.combinations函数赋给集合中的每个元素。

输出:

[(1、2),(1、3),(4),(2、3),(2、4),(3、4),(1、2、3),(1、2、4),(1,3,4),(2、3、4),(1、2、3、4)

例子:

Python中的一种实现,无需使用任何内置函数即可生成给定集合的所有子集:

输出:

[[],[1],[2],[2,1],[3],[3,1],[3 2],[3、2、1],[4],[4 1],(4,2)(4 2 1)[4 3],[4、3、1],[4 3 2]、[4、3、2、1]]

此代码使用递归函数的列表的子集年代的所有可能子集的列表年代.递归的基本情况是当输入列表的年代为空,在这种情况下,函数返回一个包含空列表的列表。在每次递归调用中,函数首先查找第n - 1的元素年代使用递归调用,然后生成最后一个的所有子集n的元素年代的每个子集中添加元素第n - 1元素。最后的结果由连接子集的两个列表。







Youtube 观看视频请加入我们的Youtube频道:现在加入

反馈


帮助他人,请分享

脸谱网 推特 pinterest

学习最新教程


准备


热门的技术


B.Tech / MCA






Baidu
map