######元组#######
1.tuple为什么需要元组?
比如:打印用户的姓名
userinfo1 = "fentiao 4 male"
userinfo[0:7]
结论:字符串中操作提取姓名/年龄/性别的方式不方便,诞生元组.
2.元组的定义
•- 定义空元组
tuple = ()
•- 定义单个值的元组
tuple = (fentiao,)
•- 一般的元组
tuple = (fentiao, 8, male)
3.元组特性
• 不能对元组的值任意更改;
• 对元组分别赋值,引申对多个变量也可通过元组方式分别赋值
执行操作并思考为什么可以改变元组的值呢?
4.元组的操作
元组也属于序列,可执行的操作如下:
索引、切片、重复、连接和查看长度
5.删除元组
del(t)
6.元组的方法
• t.count(value)-->int返回value在元组中出现的次数;
• t.index(value)返回value在元组中的偏移量(即索引值)\
######集合类型#####
1.集合的定义
set = {}不能为空
set = {1,2,3}
set = {1,2,3,1,2,3}
set = {1,2,3,'hello'}
set = {1,2,3,'hello',(1,2,3)}
set = {1,2,3,'hello',(1,2,3),[1,2,3]}不是
看看是否都可以成功定义集合?
2.set的应用场景
集合是一个无序的,不重复的数据组合。
• 列表去重
• 关系测试:如交集、差集、并集的关系测试
3.集合的关系测试操作
• 交集: list_1.intersection(list_2)
• 并集: list_1.union(list_2)
• 差集: list_1.difference(list_2)
list_2.difference(list_1)
• 对等差分 list_1.symmetric_difference(list_2)
• 子集 list_1.issubset(list_2)
• 父集 list_1.issuperset(list_2)
• 有无交集 list_1.isdisjoint(list_2)
• 交集: list_1 & list_2
• 并集: list_1 | list_2
• 差集: list_1 - list_2
list_2 - list_1
•对等差分list_1 ^ list_2
4.集合的添加
•s.add(1)
在集合中添加一项
•s.update([1,3,4])
在集合中添加多项,跟的参数应该是可迭代类型
5.集合的删除
•s.remove(1)
删除集合中指定的元素
• s.pop()
随机删除集合中的某个元素,并返回删除的元素
6.集合的其他操作
• len(s)
显示集合set的长度
•"1" in s
检测某元素是否为集合s的成员,返回布尔值
• s.copy()
集合的浅拷贝,此处不深入研究,后面会说
•s.clear()
清空集合的所有元素
7.eg: