A.基本概念
1.集合性质
>有可变集合对象和不可变集合对象两种
>无序对象
2.集合存储
>集合对象只能存放不可变对象
3.注意
>集合同数学概念,只能存放不同的不可变对象
>返回set()代表空集
>将可迭代对象转为集合会自动去重,返回一个无重的集合
B.集合的定义
1.用符号{,}定义:d={A,B,……}不能使用空括号定义,括号必须有元素
2.使用set(可迭代对象)的返回值定义
3.集合生成式
4.不可变集合定义:使用frozenset(可迭代对象)的返回值定义
C.集合的方法
1.访问
>转化为迭代器访问
>循环遍历访问
2.添加<不可变集合不可使用>
>set.add(元素A)为集合set添加一个元素A
3.删除<不可变集合不可使用>
>set.remove(元素A)删除集合中的元素A,A不存在报错
>set.discard(元素A)删除集合中的元素A,A不存在不报错
>set.clear()删除集合中的所有元素
>set.pop()随机(第一个)删除一个元素,并返回这个元素
4.计算交并差集
X = set(可迭代对象A) Y = set(可迭代对象B)
>交集
X&Y X.intersection(Y)返回X Y的交集
>并集
X|Y X.iunion(Y)返回X Y的并集
>差集(取Y中X没有的元素)
X-Y X.difference(Y)返回X Y的差集
>对称差集(X和Y中不属于X&Y的元素)
X^Y 返回X Y的对称差集
5.判断集合关系(返回布尔值)
>判断set与_set是否有交集 set.isdisjoint(_set)
>判断set是否为_set的子集 set.issubset(_set)
>判断set是否为_set的父集 set.issuperset(_set)
>判断x是否为集合set的一个元素 x (not)in set
6.其它
>深拷贝
函数:set.copy()返回此集合的副本