Python中的集合关系都有哪些?

数学中,两个集合关系的常见操作包括:交集、并集、差集、补集。设A.B是两个集合,集合之间的关系如下。

(1)交集是指属于集合A且属于集合B的元素所组成的集合。

(2)并集是指集合A和集合B的元素合并在一起组成的集合。

(3)差集是指属于集合4但不属于集合B的元素所组成的集合。

(4)补集是指属于集合A和集合B但不同时属于两者的元素所组成的集合。

Python 中集合之间支持前面所介绍的4种操作,操作逻辑与数学定义完全相同。Python提供了4种操作符以实现这4项操作,分别是交集(&)、并集(l)、差集(-)、补集(∧)。下面以两个圆形表示集合A和B,并使用阴影部分显示4种操作的结果,如图下图所示。

除此之外,Python还提供了4个增强操作符:l=、-=、&=、“=,它们与前面4个操作符的区别是,前者是生成了一个新的集合,而后者是更新了位于操作符左侧的集合。接下来通过一张表罗列集合S和T之间关系的常见操作,具体如表所示。

假设有集合a={1,11,21,31,17}和集合b={0,11,20,17,30),它们执行取交集、并集、差集、补集的示例如下:

>>>a={1, 11, 21, 31, 17}
>>> b={0,11,20,17,30}
>>>a|b    #取a和b的并集
{0, 1, 11, 17, 20, 21, 30, 31}
>>> a-b   #取a和b的差集
{1,21,31}
>>> a&b   #取a和b的交集
{17, 11}
>>> a∧b    #取a和b的补集
{0, 1, 20, 21, 30, 31}

对于两个集合A与B,如果集合A中的所有元素都是集合B的元素,那么集合B包含集合A,也就是说集合A是集合B的子集,集合B是集合A的超集;如果集合A中的所有元素都是集合B中的元素,且集合B中至少有一个元素不属于集合A,那么集合A是集合B的真子集,集合B是集合A的真超集。

Python 中使用的比较运算符可以用来检查某个集合是否为其他集合的子集或者超集,其中,“<”或者“<=”运算符用于判断真子集和子集,“>”和“>=”运算符用于判断的是真超集和超集。需要注意的是,“<”和“>”运算符支持的是严格意义定义的子集和超集,它们不允许两个集合相等;而“<=”和“>=”运算符支持的是非严格意义定义的子集和超集,它们允许两个集合是相等的。例如:

>>> set_ one = set('what')
>>> set_two = set('hat')    
>>> set_one < set_two    #判断set_one是否为set_two 的严格子集
False
>>> set_one >set_two    #判断set_one是否为set two的严格超集
True

给TA打赏
共{{data.count}}人
人已打赏
影视后期

javascriptdate差,js计算时间差,注意是时分

2024-3-30 10:40:10

python

Python中怎样选择正确的可视化图表?

2023-2-18 22:56:12

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索
打开微信,扫描左侧二维码,关注【旅游人lvyouren】,发送【101】获取验证码,输入获取到的验证码即可解锁复制功能,解锁之后可复制网站任意一篇文章,验证码每月更新一次。
提交