【小白从小学Python、C、Java】
【Python全国计算机等级考试】
【Python数据分析考试必会题】
● 标题与摘要
Python中判断集合A是集合B的超集的方法
issuperset()方法
● 选择题
以下python代码输出的结果中哪一项是正确的?
x = {"a", "b", "c"}
y = {"n", "m", "q"}
z = {"n", "a", "b", "q", "c"}
n = z.issuperset(x)
m = z.issuperset(y)
print(n,m)
A False False
B True True
C True False
D False True
● 问题解析
1.超集是指如果一个集合B中的每一个元素都在集合A中,且集合A中可能包含B中没有的元素,则集合A就是B的一个超集,反过来,B是A的子集。 A是B的超集,若A中一定有B中没有的元素,则A是B的真超集,反过来B是A的真子集。
2.子集是指如果集合A的任意一个元素都是集合B的元素,那么集合A称为集合B的子集。如果集合A是B的子集,且A≠B,即B中至少有一个元素不属于A,那么A就是B的真子集。
2.issuperset()方法用于判断集合A是否为集合B的超集,即一个集合B中的每一个元素都在集合A中,且集合A中可能包含B中没有的元素,则集合A就是B的一个超集,B是A的一个子集。如果A是B的超集则返回 True,否则返回 False。
2.issuperset()方法语法:A.issuperset(B),其中B为必填集合,作为需要进行判断的集合。代码含义是:判断集合A是否为集合B的超集。若A是B的超集,则返回True,否则返回False。
3.本题中首先定义了三个集合,分别为x = {"a", "b", "c"}、y = {"n", "m", "q"}、z = {"n", "a", "b", "q", "c"},因此在进行z.issuperset(x)时,z中包含x中的"a", "b","c"三个元素,包含x中的所有元素,且包括x中没有"n","q"的两元素,即z是x的超集,因此返回True;在进行z.issuperset(y)时,z中仅包y中的"n","q"两元素,不包含y中的"m"元素,即z不是y的超集,因此返回False。
● 附图
● 附图代码
x = {"a", "b", "c"}
y = {"n", "m", "q"}
z = {"n", "a", "b", "q", "c"}
n = z.issuperset(x)
m = z.issuperset(y)
print(n,m)
x = {"a", "b", "c"}
y = {"n", "m", "q"}
z = {"n", "a", "b", "q", "c"}
n = x.issubset(y)
m = x.issubset(z)
print(n,m)
● 正确答案
C
● 温馨期待
期待大家提出宝贵建议,互相交流,收获更大,助教:mmy
欢迎大家转发,一起传播知识和正能量,帮助到更多人。期待大家提出宝贵改进建议,互相交流,收获更大。辛苦大家转发时注明出处(也是咱们公益编程交流群的入口网址),刘经纬老师共享知识相关文件下载地址为:http://liujingwei.cn