异常
目标
异常的概念捕获异常异常的传递抛出异常
01异常的概念
程序在运行时,如果 Python 解释器 遇到 到一个错误,会停止程序的执行,并且提示一些错误信息,这就是 异常
02捕获异常
在程序开发中,如果 对某些代码的执行不能确定是否正确,可以增加 try(尝试) 来 捕获异常 try:
num=int(input('请输入一个数字'))
jieguo=35/num
print(jieguo)
except Exception as result:
print(result)
else:
print('没有异常才执行此代码')
finally:
print('无论有没有异常都会执行此代码')
#以上是捕获异常的完整语法
以上是捕获异常的完整语法
在else中语句中,如果没有异常才能执行,而finall语句中无论有没有异常都会执行
03异常的传递
异常的传递 —— 当 函数/方法 执行 出现异常,会 将异常传递 给 函数/方法 的 调用一方
如果 传递到主程序,仍然 没有异常处理,程序才会被终止
try:
num=int(input('请输入一个数字'))
jieguo=35/num
print(jieguo)
except Exception as result:
print(result)
else:
print('没有异常才执行此代码')
finally:
print('无论有没有异常都会执行此代码')
#以上是捕获异常的完整语法
以上就是函数的传递。
04抛出raise异常
在开发中,除了 代码执行出错 Python 解释器会 抛出 异常之外还可以根据 应用程序 特有的业务需求 主动抛出异常
def input_password():
pwd=input('请输入密码:')
if len(pwd)>=8:
return pwd
ex=Exception('密码长度不够')
raise ex
try:
user_pwd=input_password()
print(user_pwd)
except Exception as result:
print('发现错误%s'%result)
以上函数,如果用户输入长度<8,抛出异常
如果用户输入长度>=8,返回输入的密码