一 概念
- 程序在运行时,如果Python解释器 遇到 一个错误,会停止程序的执行,并且提示一些错误信息,这就是异常
- 程序停止执行并且提示错误信息 这个动作,我们通常称之为:抛出(raise)异常
二 捕获异常
1.简单形式
- 如果某些代码的执行不能确定是否正确,可以增加try(尝试)来捕获异常
- 语法格式:
try:
不能确定是否能正常执行的代码
except:
出现错误的处理
- try 尝试,下方编写不确定是否能够正常执行的代码
- except 如果不是,下方编写尝试失败的代码
注:不建议在不清楚逻辑的情况下捕获所有异常,有可能你隐藏了很严重的问题
2.异常类型捕获
- 在程序执行时,可能会遇到不同类型的异常,并且需要针对不同类型的异常,做出不同的响应
- 语法如下:
try:
# 尝试执行的代码
pass
except AssertionError:
# 针对错误类型对应的代码处理
pass
except (ArithmeticError,AttributeError):
# 针对错误的类型,对应的代码处理
pass
except Exception as e:
print("未知错误:{}".format(e))
执行了一个except剩下的except就不会被执行
try:
num = int(input("请输入整数:"))
result = 8/num
except ValueError:
print("请输入正确的整数")
except ZeroDivisionError:
print("除零错误")
print("继续往下执行")
如果执行了except就不会执行else
try:
num = int(input("请输入整数:"))
result = 8/num
except ValueError:
print("请输入正确的整数")
except ZeroDivisionError:
print("除零错误")
else:
print("正常执行!")
finally:
print("不论是否异常都会被执行")
print("继续往下执行")