IT培訓(xùn)網(wǎng)
IT在線學(xué)習(xí)
Python中的集合可以執(zhí)行數(shù)學(xué)集合運算,如判斷某個集合是否為另一個集合的子集、并集、交集等,使用運算符或集合方法都可以做到。下面將討論常見的集合方法。
1、issubset()方法或“<=”“<”求子集
如果集合A中的任意一個項都是集合B中的項,那么集合A稱為集合B的子集。集合的issubset()方法用于判斷某個集合是否為另一個集合的子集:
- >>> # 下面三個集合中,b是a的子集, 同時b也是c的子集
- >>> a = {1, 2, 3}
- >>> b = {1, 2}
- >>> c = {1, 2, 4}
- >>> b.issubset(a)
- True
- >>> b.issubset(c)
- True
- >>> a.issubset(b) # b是a的子集,但a不是b的子集
- False
- >>> c.issubset(a) # a不是c的子集,返回False
- False
- >>> a.issubset(a) # 每個集合都一定是自己的子集
- True
也可以使用“<=”操作符來判斷某個集合是否為另一個集合的子集,這與issubset()方法是等價的:
- >>> a = {1, 2, 3}
- >>> b = {1, 2}
- >>> c = {1, 2, 4}
- >>> b <= a
- True
- >>> b <= c
- True
- >>> a <= b
- False
- >>> c <= a
- False
- >>> a <= a
- True
如果集合A是集合B的子集,但集合A不等于集合B,那么集合A稱為集合B的真子集。可以使用“<”操作符來判斷某個集合是否為另一個集合的真子集:
- >>> a = {1, 2, 3}
- >>> b = {1, 2}
- >>> b < a # b是a的真子集
- True
- >>> a < a # a不是自己的真子集
- False
2、issuperset()方法或“>=”“>”求超集
與子集對應(yīng)的是超集。如果集合A是集合B的子集,那么集合B是集合A的超集。集合的issuperset()方法用于判斷某個集合是否為另一個集合的超集:
- >>> # 下面三個集合中,a是b的超集, 同時c也是b的超集
- >>> a = {1, 2, 3}
- >>> b = {1, 2}
- >>> c = {1, 2, 4}
- >>> a.issuperset(b)
- True
- >>> c.issuperset(b)
- True
- >>> b.issuperset(a)
- False
- >>> a.issuperset(c) # a不是c的超集,返回False
- False
- >>> a.issuperset(a) # 每個集合都一定是自己的超集
- True
也可以使用“>=”操作符來判斷某個集合是否為另一個集合的超集,這與issuperset()方法是等價的:
- >>> a = {1, 2, 3}
- >>> b = {1, 2}
- >>> c = {1, 2, 4}
- >>> a >= b
- True
- >>> c >= b
- True
- >>> b >= a
- False
- >>> a >= c
- False
- >>> a >= a
- True
如果集合A是集合B的超集,但集合A不等于集合B,那么集合A稱為集合B的真超集?梢允褂“>”操作符來判斷某個集合是否為另一個集合的真超集:
- >>> a = {1, 2, 3}
- >>> b = {1, 2}
- >>> a > b # a是b的真超集
- True
- >>> a > a # a不是自己的真超集
- False
3、()方法或“|”求并集
給定兩個集合A、B,將它們所有的項合并在一起組成的集合,稱為集合A與集合B的并集。集合的()方法用于求集合間的并集:
- >>> a = {1, 2, 3}
- >>> b = {2, 3, 4}
- >>> c = {5, 6, 7}
- >>> a.(b) # a和b的并集
- {1, 2, 3, 4}
- >>> b.(c) # b和c的并集
- {2, 3, 4, 5, 6, 7}
- >>> c.(b) # 并集運算滿足交換律,即b和c的并集等于c和b的并集
- {2, 3, 4, 5, 6, 7}
>>本文地址:http://m.nfbqydst.cn/zhuanye/2020/55047.html
聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
1 您的年齡
2 您的學(xué)歷
3 您更想做哪個方向的工作?