python3异常处理语句
基本语法
try:
# 执行代码
pass
except:
# 发生异常时执行的代码
pass
else:
# 没有异常时执行的代码
pass
finally:
# 不管有没有异常都会执行的代码
pass
一般来说 except
后面要跟错误类型,不带类型的话表示捕获所有异常,而且有的代码检查器会报错(例如:flake8)
捕获所有异常类型的方法
# 第一种方法(一般用这种)
try:
pass
except Exception:
# 可以捕获除与程序退出sys.exit()相关之外的所有异常。
pass
# 第二种方法
try:
pass
except BaseException:
'''
‘except BaseException:’ 和 ‘except:’ 是一样的,
但是不写异常类型的话,检查器可能会报错。不过解释器依旧是能成功运行的。
这种方法会捕获所有异常,包括键盘中断和程序退出请求,用sys.exit()无法将退出程序,因为异常被捕获了。
'''
pass
提示:BaseException 是 Exception 的父类
获取异常信息
try:
pass
except Exception as e: # 将异常信息赋值给e
print("e=",e) # 打印异常信息
附:python3 所有异常类型文档
python3官方中文文档:https://docs.python.org/zh-cn/3/library/exceptions.html