700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > python集合的并交差操作

python集合的并交差操作

时间:2020-06-05 03:59:20

相关推荐

python集合的并交差操作

创建两个集合用于测试,创建集合可以用两种方式,{}或者set,但是不能用{}创建空集合,因为s={}表示创建一个空字典

s1 = {}print(type(s1))s2 = set()print(type(s2))s3 = {1,2,3}print(type(s3))# <class 'dict'># <class 'set'># <class 'set'>

1.集合的并 union

set1.union(set2, set3…)

返回值:返回一个新集合

s1 = {1,2,3,4}s2 = {2,3,4,4,6}s3 = {7,8}print(s2)print(s1.union(s2, s3))# {2, 3, 4, 6}# {1, 2, 3, 4, 6,7,8}

集合是无序的不重复元素序列,重复元素会被自动去掉

2.集合的交 intersection

set1.intersection(set2, set3 …)

返回值:返回一个新集合

s1 = {1,2,3,4}s2 = {2,3,4,4,6}s3 = {7,8}print(s1.intersection(s2, s3))print(s1.intersection(s2))# set()# {2, 3, 4}

set1.intersection_update(set2,set3)

返回值:没有返回值,在原始的集合上移除不重叠的元素

s1 = {1,2,3,4}s2 = {2,3,4,4,6}s3 = {7,8}print(s1.intersection_update(s2))s1.intersection_update(s2)print(s1)# None# {2, 3, 4}

3.集合的差 difference

set1.difference(set2, set3 …)

返回值:返回一个新集合

s1 = {1,2,3,4}s2 = {4,6,8}s3 = {2,7,8}print(s1.difference(s2,s3))# {1, 3}

set1.difference_update(set2,set3)

返回值:没有返回值,在原始的集合上移除不重叠的元素

s1 = {1,2,3,4}s2 = {4,6,8}s3 = {2,7,8}print(s1.difference_update(s2,s3))s1.difference_update(s2,s3)print(s1)# None# {1, 3}

集合还有两个常用的方法:

set1.isdisjoint(set2)

判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False

s1 = {1,2,3,4}s2 = {4,6,8}s3 = {5,7,8}print(s1.isdisjoint(s2))print(s1.isdisjoint(s3))# False# True

set1.issubset(set2)

判断set1是否是set2的子集,是则返回true,否则返回false

s1 = {1,2}s2 = {1,2,3,4}print(s1.issubset(s2))print(s2.issubset(s1))# True# False

或者直接使用逻辑运算符,更简单:

ls1 = {1, 2, 3, 4, 5}ls2 = {3, 4, 5, 6}print("集合并集:", ls1 | ls2)print("集合交集:", ls1 & ls2)print("集合1-交集", ls1 - ls2)print("集合交叉集", ls1 ^ ls2)

输出为:

集合并集: {1, 2, 3, 4, 5, 6}集合交集: {3, 4, 5}集合1-交集 {1, 2}集合交叉集 {1, 2, 6}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。