元组特点
1.有序的集合
2.通过偏移来取数据,支持切片。(查看支持方法,只需要 dir(变量))
3.属于不可变的对象,不能在原地修改内容,没有排序,修改等操作。
“修改”方法:如果要修改,先用list把元组转成列表,再用tuple转换成list。
或者,先生成一个tuple的拷贝(如何生成?),再按上面的方法改。
那为什么有列表还要有元组呢?
元组不可变的好处。保证数据的安全,比如我们传给一个不熟悉的方法或者数据接口,
确保方法或者接口不会改变我们的数据从而导致程序问题。
集合特点
没有顺序的概念,所以不能切片or索引。
创建集合
分为set():可变的
与
frozenset():不可变的
如何确定一个对象是否可以迭代?dir()此对象。如果看到其中有___iter___,就说明可以迭代。
a = set('abc')//括号里必须为可迭代对象。
>>> b
set(['a','c','b'])
添加与删除操作
添加:
分add方法,update方法。
前者把整体插入,后者把其迭代分块插入。(不明白自己试试!)
删除:
remove(要删除的元素)方法。
成员关系
in , not in
判断在不在集合里
返回一个bool值
交集,并集,差集
集合a,b;
交集 : a & b
并集:a | b
差集 : a - b(只在a中出现的元素)
set对list去重
a = [1,2,3,2,3];
b = set(a)
a = list(b)