python学习5-集合与集合操作
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python学习5-集合与集合操作相关的知识,希望对你有一定的参考价值。
数学意义上的集合,没有重复元素,元素必须可hash
1、定义
s = set()
s = {1,2,3}
s = set(可迭代对象)
2、加
s.add(元素) #增加1个元素,类似列表的append
s.update(可迭代对象) #增加一个可迭代对象,类似列表的extend
3、删除
s.remove(元素) #元素不存在,报key error
s.pop() #随机删除并返回1个元素,当集合为空时,报key error
s.discard(元素) #删除不存在元素的时候,不会报错
s.clear() #清空集合
4、集合不能修改单个元素
5、查找
集合不能索引查找
集合无法访问单个元素
集合没有查找方法
集合不是线性结构
集合元素没有顺序
6、成员运算符:判断一个元素是否在容器中
in:在返回true
not in:不在返回true
当数据规模很大时集合的成员运算效率远高于列表,且与规模无关;列表的与去其规模有关,当规模较小,列表要快很多。
7、集合的运算
s1.intersection(s2) #交集
s1.intersection_update(s2) #交集并修改s1
s1 & s2 #求交集
s1.difference(s2) #差集
s1.difference_update(s2) #差集并修改s1
s1 - s2 #差集
s1.symmetric_difference(s2) #对称差集
s1.symmetric_difference_update(s2) #对称差集并修改s1
s1 ^ s2 #对称差集 ,相当于异或
s1.union(s2) #并集
s1 | s2 #并集
8、集合的判断
s1.issubset(s2) #s1是否是s2的子集
s1.issuperset(s2) #s1是否是s2的超集
s1.isdisjoint(s2) #判断是否有交集,有为假,无为真
以上是关于python学习5-集合与集合操作的主要内容,如果未能解决你的问题,请参考以下文章