作用:捕获异常
表达式:
try:
表达式
except ValueError as e:
表达式
except ZeroDivisionError as e:
表达式
....
else:
表达式
finally:
表达式
注意:只要有finally都会执行。
三种捕获方法:
1、捕获所有的异常。
try:
x=1/0
except Exception as e:
print(e)
>>> division by zero
2、采用sys回溯最后的异常。
import sys
try:
x=1/0
except Exception:
info = sys.exc_info()[0]
print('error: {}'.format(info))
>>> error: <class 'ZeroDivisionError'>
3、采用traceback模块查看异常。
import traceback
try:
x=1/0
except Exception:
traceback.print_exc()
>>>
Traceback (most recent call last):
File "C:/Users/zhen24/Desktop/Learn/Demo/demo/test.py", line 5, in <module>
x=1/0
ZeroDivisionError: division by zero
常见的异常错误:
IndexError 索引错误
ZeroDivisionError 除零错误
MemoryError 内存错误
NameError 为声明初始化对象
SyntaxError 语法错误
IndentationError 缩进错误
SystemError 系统错误
TypeError 类型错误
ImportError 导入模块或对象错误
OSError 操作系统错误
KeyError 键错误
ValueError 值错误
RuntimeError 运行时错误