Python——异常
程序运行时,若出现:
- 使用变量前未赋值
- 序列中使用不存在的索引值
- 除0
则会抛出异常,程序终止
9.1 处理异常
1 | try: |
try
必须有except
或者finally
至少有一个
9.2 异常抛出
- 在函数中出现的异常并进行处理,则不会继续传播
- 若在异常出现处为处理,则继续向调用出传播,直到全局作用域
- 全局作用域未处理,则终止程序,显示异常信息
- 所有的异常信息都会被保存到异常对象中
- 异常传播是将异常对象抛给调用处
9.3 异常对象
异常类 | 含义 |
---|---|
ZeroDivisionError | 表示除0异常 |
NameError | 处理变量错误异常 |
IndexError | 索引异常 |
捕获异常对象
1 | try: |
9.4 自定义异常对象
使用 raise
抛出异常
raise
异常类或异常实例(异常信息)
所有异常都必须是 Exception
1 | class MyError(Exception): |