【Python入门与进阶】 序列- 集合,集合运算符
【原文】【Python入门与进阶】 序列- 集合,集合运算符
文章目录
0:导语
》》a:set里的元素不能重复,元素是无序
》》b:空集合使用set()
》》c:其他方法跟list类似
》》d:python序列是牛的是集合之间的运算
1:集合
(已经学过的 list,tuple 都是有序的,可重复的序列,而今天这个有去重效果)
集合set,是一个无序不可重复的序列
1.1:创建集合
说明:
1)使用 {} 来创建集合
2) 使用 set() 函数来创建集合
如图:
1)空集合必须使用set()创建
2)通过set()来将序列和字典转换为集合
3) 使用set()将字典转换为集合时,只会包含字典中的键
1.2 :集合方法
》》1:len方法
说明:
1)使用in和not in来检查集合中的元素
2) 使用len()来获取集合中元素的数量
3)add() 向集合中添加元素
》》2:update方法
说明:
1)将一个集合中的元素添加到当前集合中
2)update()可以传递序列或字典作为参数,字典只会使用键
》》3:删除
如图pop随机删除 ,remove删除指定
》》4 : clear()清空集合
》》5: copy()对集合进行浅复制
2:集合运算
定义:集合运算包含,交集,并集,差集,异或集
(其实一张图就可以描述的很清楚)
交集 x&y <==> ②
并集 x|y <==> ① + ② + ③
差集 x-y <==> ①
差集 y-x <==> ③
异或集 x^y == y^x <==> ① + ③
在对集合做运算时,不会影响原来的集合,而是返回一个运算结果
2.1:交集运算
如图:两个集合共同的元素放在新集合返回
2.2:并集运算
如图:两个集合的元素放在新集合,返回,新集合元素不重复
2.3: - 差集
如图:集合减去交集元素,返回新集合
2.4: ^ 异或集
如图:
得到并集减去交集的结果。
2.5 <=
检查一个集合是否是另一个集合的子集
如图: 判断 s1 是不是 s2的一部分
如果a集合中的元素全部都在b集合中出现,那么a集合就是b集合的子集,b集合是a集合超集
2.6 <
如图:
检查一个集合是否是另一个集合的真子集
(其实就是谁包含谁的问题)
如果超集b中含有子集a中所有元素,并且b中还有a中没有的元素,则b就是a的真超集,a是b的真子集
2.7 >=
检查一个集合是否是另一个的超集
2.8 >
检查一个集合是否是另一个的真超集