当执行可能出错的代码时,需要异常处理程序用于组织潜在的错误发生。在异常可能发生的地方添加异常处理程序,对于用户明确错误是一个好方法。
Python异常处理的语法如下
try:
语句A
except 异常1:
语句B
except 异常2:
语句C
...
except 异常N:
语句N+1
except:
语句N+2
else:
语句N+3
finally:
语句N+4
当执行语句A出现异常时,则中断语句A中的执行,并查找对应的异常类型。当匹配到异常类型时,就进入相应语句进行处理,如果没有匹配到,则进入语句N+2进行处理。except本身时可选项,如果不提供,则交给Python作默认处理。
如果执行语句A无异常,则执行语句N+3。无论是否发生异常,如果提供了finally语句,则总是执行语句N+4。
异常名称 | 描述 |
---|---|
SystemExit | 解释器请求退出 |
FloatingPointError | 浮点计算错误 |
OverflowError | 数值运算超出最大限制 |
ZeroDivisionError | 除零 |
KeyboardInterrupt | 用户中断执行 |
ImportError | 导入失败 |
IndexError | 序列中无此索引 |
RuntimeError | 一般的运行时错误 |
AttributeError | 对象没有这个属性 |
IOError | 输入/输出失败 |
OSError | 操作系统错误 |
KeyError | 映射中没有这个键 |
TypeError | 对类型的无效操作 |
Value | 传入无效参数 |