1、什么是元组
(1)元祖是Python内置的数据结构之一,是一个不可变序列
(2)不可变序列与可变序列
不可变序列:没有增、删,改的操作,如何改变,对象地址发生更改,例:字符串、元组。
可变序列:可以对序列执行增、删、改操作,对象地址不发生更改,例:列表、字典。
(3)为什么要将元组设计成不可变序列
在多任务环境下,同时操作对象时需要加锁,在程序中如果使用不可变序列,就不用加锁,因为不会对内容造成破坏了。
元组中存储的是对象的引用
a)如果元组中对象本身不可变对象,则不能再引用其它对象
b)如果元组中的对象是可变对象,则可变对象的引用不允许改变,但数据可以改变
2、元组的创建方式
(1)直接小括号(也可以省略小括号)
(2)使用内置函数tuple()
(3)只包含一个元组的元素需要使用逗号和小括号
(4)空列表/空字典/空元祖的创建
空列表
空字典
空元祖
3、元组的遍历
4、什么是集合
- Python语言提供的内置数据结构
- 与列表、字典一样都属于可变类型的序列
- 集合是没有value的字典
5、集合的创建
(1)直接{ }
(2)使用内置函数set()将其他数据类型转成集合数据类型
6、集合的增、删、改、查操作
(1)集合元素的判断操作
in或not in
(2)集合元素的新增操作
调用add()方法,一次添中一个元素
调用update()方法至少添中一个元素
(3)集合元素的删除操作
调用remove()方法,一次删除一个指定元素,如果指定的元素不存在抛出KeyError
调用discard()方法,一次删除一个指定元素,如果指定的元素不存在不拋异常
调用pop()方法,一次只删除一个任意元素
调用clear()方法,清空集合
7、集合间的关系.
(1)两个集合是否相等
可以使用运算符 == 或 != 进行判断
(2)一个集合是否是另一个集合的子集
可以调用方法issubset进行判断
(3)一个集合是否是另一个集合的超集
可以调用方法issuperset进行判断
(4)两个集合是否没有交集
可以调用方法isdisjoint进行判断
8、集合的数据操作
(1)交集
(2)并集
(3)差集操作
(4)对称差集
9、集合生成式
- 将{ }修改为[ ]就是列表生成式
- 没有元组生成式(因为元组是不可变序列)