1.元组
1.1创建一个元组
列表:打了激素的数组
元组:带了紧箍咒的列表
不可变数据类型,没有增删改
可以存储任意数据类型
1.2元组的常用方法
1.3元组的特性
1.3.1索引
1.3.2切片
1.3.3连接
1.3.4重复
1.3.5for循环
1.3.6成员操作符
1.4元组的应用场景
1.4.1变量的交换
1.4.2打印(print)
2.集合
2.1定义以一个集合
集合中的元素不会重复出现,而且他会在内存中对集合进行整理去重,但不是以重排序。
2.2 集合中常用的方法
2.2.1 自动整理
2.2.2 添加
2.2.3 删除
2.2.4 排序
2.2.5 并集
2.2.6 交集
2.2.7 差集
2.2.8 对等差分
2.2.9 子集
2.2.10 两集合是否不相交
2.3集合的特性
2.3.1 成员操作符
2.3.2 for循环
==注意:==不要忘记end的作用是结尾字符,我们将他设为空,所以不会换行。
2.4 练习题
华为机测题:
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性他先用计算机生成了N个1~1000之间的随机整数(N<=1000),N是用户输入的,对于其中重复的数字,只保留一个,把其余相同的数字去掉,不同的数对应着不同的学生的学号,然后再把这些数从小到大排序,按照排好的顺序去找同学做调查,请你协助明明完成“去重”与排序工作
提示sorted()进行排序
方法一:
方法二:
3.python中常用的内置方法
3.1min求最小值
3.2max求最大值
3.3 sum集合求和
3.4 枚举
3.5 zip配对
4.字典
4.1字典的定义
字典 key-value 键值对
4.1.1 工厂函数
4.1.2 字典的嵌套
4.2字典的特性
4.2.1 字典不支持切片
4.2.2 成员操作符
4.2.3 for循环遍历字典
4.3 字典元素的增加
4.3.1 update
4.3.2 setdefault
4.4字典元素的删除
4.4.1 清空字典内容
4.5 字典元素的查看
5. 深拷贝和浅拷贝的区别
当一个变量a=x的时候 约定为:指向一个地址的过程
浅拷贝:copy.copy()
深拷贝:copy.deepcopy()
如果 copy.copy()拷贝的是元组 那么它不会进行浅拷贝 仅仅是指向
因为元组是不可变数据类型,意味着数据一定不能修改
因此它会自动判断为指向
6.生成式
6.1 列表生成式
6.2字典生成式
7.高阶函数
高阶函数
-实参是一个函数名
-函数的返回值是一个函数
7.1内置高阶函数map
map():接收两个参数,一个是函数 一个是序列
map将传入的函数依次作用到序列的每个元素,并且把结果作为新的序列返回
7.2 内置高阶函数reduce
reduce():把一个函数作用在一个序列上,这个函数必须接收两个参数
reduce把结果继续和序列的下一个元素做累积计算
reduce(f,[x1,x2,x3,x4]) = f(f(x1,x2),x3),x4)
python2中:reduce是内置函数
python3:from functools import reduce
7.3内置高阶函数filter
filter过滤函数
和map()类似的,也接收一个函数和一个序列
但是和map()不同的是,filter()把传入的函数依次作用于
每个元素,然后根据返回值是True或者False决定保留还是丢弃该元素