一. python中异常捕捉
python中捕捉异常模块try/except,其中python中有一些自定义的异常,具体如下
AttributeError 调用不存在的方法引发的异常
EOFError 遇到文件末尾引发的异常
ImportError 导入模块出错引发的异常
IndexError 列表月越界引发的异常
IOError I/O操作引发的异常,如打开文件出错等
KeyError 使用字典中不存在的关键字引发的异常
NameError 使用不存在的变量名引发的异常
TabError 语句块缩进不正确引发的异常
ValueError 搜索列表中不存在值引发的异常
ZeroDivisionError 除数为零引发的异常
1.1 捕捉异常并抛出
先通过一段代码看下python中异常的捕获,这里为了能清楚看到异常,使用traceback模块对异常进行了追踪
import sys
import traceback
class DefineError:
def __init__(self):
pass
@staticmethod
def fun_error():
try:
c = 1 / 0
except Exception as e:
info = sys.exc_info()
# traceback.print_tb(info[2])
traceback.print_exc()
print(e, "here is error")
if __name__ == '__main__':
obj = DefineError()
obj.fun_error()
输出结果
Traceback (most recent call last):
File "D:/work/code/auto_test/define_error.py"