Python的异常机制主要依赖try,except, finally, else 和 raise五个关键字
1. 异常描述
异常机制已经成为衡量一门编程语言是否成熟的标准之一
使用异常处理机制的Python程序有更好的容错性,更加健壮。
2. 异常处理机制
1. try...except捕获异常
try:
# 业务实现代码
...
except (Error1, Error2, ...) as e:
...
goto retry
实例
2. 异常类的继承机制
异常捕获流程所有异常类的基类是BaseException,
但是用户如果要实现自定义异常,则应该继承Exception类
3. 多异常捕获
在使用一个except块捕获多种类型的异常时,只要将多个异常类用圆括号括起来,中间用逗号隔开即可——其实就是构建多个异常的元组
多异常捕获
4. 访问异常信息
5. else块
当try语句没有出现异常时,程序会执行else块
意义,当try没有异常,else有异常,就能体现else块的作用
6. 使用finally回收资源
- 为了保证一定能回收在try块打开的物理资源,异常处理机制提供了finally块。不管try块的代码是否出现问题,也不管哪一个except块被执行,甚至在try块或except块中执行了return语句,finally块总会被执行。
-
如果在finally块中使用了return语句或raise语句,将会导致try块,except块中的return,raise语句失效。
Python异常处理语法
7. 异常处理嵌套
3. 使用raise引发异常
1. 引发异常
引发异常2. 自定义异常类
3. raise不需要参数
4. Python的异常传播轨迹
只要异常没有被捕获到,异常就会从发生异常的函数或方法向外传播,首先传给该函数的调用者,该函数或方法的调用者再传播给其调用者......直到最后传到Python解释器。中止程序,打印异常的传播轨迹信息。
网友评论