可迭代对象和异常捕获
常用内置函数
-
map() 映射
-
zip() 拉链
-
max与min max求最大值 min求最小值
-
filter 过滤
-
reduce 归总
可迭代对象
- 迭代:
迭代即更新换代,每一次的更新都必须依赖上一次的结果 - 可迭代对象:
内置有__iter__方法都可称为可迭代对象,内置的意思是可以通过点的方式直接查看到的
可迭代对象调用__iter__方法会变成迭代器对象(老母猪),还有一个简便的写法iter(),一般情况下所有的双下方法都会有一个与之对应的简化版本
迭代器对象
- 定义:
含有__iter__和__next__的方法 - 如何生成可迭代对象:
即让可迭代对象执行__iter__方法
(文件对象本身即是可迭代对象又是迭代器对象,迭代器对象无论执行多少次__iter__方法还是迭代器对象)
for循环的本质
*** eg:**
- for循环内部原理:
1、将关键字in后面的数据先进性调用__iter__方法转为可迭代器对象
2、循环执行__next__方法
3、所有值取完之后再进行__next__方法会报错
异常捕获
-
什么是异常
代码运行过程中会出错导致异常,异常发生后如果没有解决方案则会导致程序直接结束 -
异常的三个重要组成部分
1、traceback
在一个出错代码的报错部分的末尾,第一个蓝色字体,鼠标左键进行点击即可跳转到错误代码所在的行
2、xxxError
代表错误的类型
3、错误类型冒号后面的内容
代表错误的详细原因,查看后可知因何而错,从而找到解决方法
-
错误的种类
1、语法错误
不可原谅
2、逻辑错误
在允许范围 -
异常的基本语法结构
try:
有可能会出错的代码
except 错误类型 as e:
出错之后对应的处理机制(e是错误的详细信息)
except 错误类型 as e:
出错之后对应的处理机制(e是错误的详细信息)
except 错误类型 as e:
出错之后对应的处理机制(e是错误的详细信息)
-
万能异常
**1.有可能会出现错误的代码才需要被监测
2.被监测的代码一定要越少越好
3.异常捕获使用频率越低越好
**