【数据类型】17、容器类型:集合【数据类型】17、容器类型:集合
一、标签的容器
二、创建一个集合
三、更新一个集合
四、访问集合中的元素
五、集合的运算
六、什么时候用集合
一、标签的容器
- “标签袋”
通过改造字典类型,去掉关联数据值,只留下标签的新容器类型 -
集合是不重复元素的无序组合
二、创建一个集合
创建集合:{}或者set()
用set()创建空集
可用set()从其它序列转换生成集合
集合会自动忽略重复的数据
集合中不能加入可变类型数据
三、更新一个集合
- 增长集合
add:添加一个数据
update:批量添加数据 - 缩减集合
remove/discard:删除指定数据(删除的数据不存在,remove会报错,discard不会报错)
pop:删除任意数据并返回值
clear:清空集合 -
集合大小:len函数
四、访问集合中的元素
- in:判断元素是否属于集合。
- pop:删除数据元素的同时,返回它的值取遍所有数据元素之后,集合成为一个空集,可以用copy操作先给集合制作一个“替身”。
- 迭代循环
for a in aset:
五、集合的运算
-
生成新集合的运算
对称差是a-b和b-a并在一起
-
关系判定
:子集/真子集/超集/真超集
-
交集
isdisjoint()
:两集合交集是否为空
六、什么时候用集合?
- 快速去除重复的数据项
154,233,432,154,236,213,342,432,236,332,321,243,319,326,324,321,163,183,235,… - 判断元素是否在一组数据中,如果这些数据的次序不重要,使用集合可以获得比列表更好的性能。
如,325是否在上述的一组数据中?
微信赞赏支付宝赞赏