作者:东北的小爷们_366 | 来源:互联网 | 2023-12-14 16:04
本文介绍了Python异常的捕获、传递与抛出操作,并提供了相关的操作示例。通过异常的捕获和传递,可以有效处理程序中的错误情况。同时,还介绍了如何主动抛出异常。通过本文的学习,读者可以掌握Python中异常处理的基本方法和技巧。
本文实例讲述了Python 异常的捕获、异常的传递与主动抛出异常操作。分享给大家供大家参考,具体如下:
异常的捕获
demo.py(异常的捕获):
try:
# 提示用户输入一个整数
num = int(input("输入一个整数:"))
# 使用 8 除以用户输入的整数并且输出
result = 8 / num
print(result)
except ValueError:
print("请输入正确的整数")
except Exception as result:
print("未知错误 %s" % result)
else:
print("未发生异常时,执行的代码")
finally:
print("无论是否出现异常都会执行的代码")
运行结果:
异常的传递
demo.py(异常的传递):
def demo1():
return int(input("输入整数:"))
def demo2():
return demo1()
# 利用异常的传递性,在主程序捕获异常
try:
print(demo2())
except Exception as result:
print("未知错误 %s" % result)
# demo1()发生异常 --> 传递给demo2() --> 传递给主程序 print()函数 --> 主程序如果未捕获,程序终止
运行结果:
主动抛出异常
demo.py(raise主动抛出异常):
def input_password():
# 提示用户输入密码
pwd = input("请输入密码:")
# 如果密码长度>=8,返回用户输入的密码
if len(pwd) >= 8:
return pwd
# 如果 <8 主动抛出异常
print("主动抛出异常")
# 1> 创建异常对象
ex &#61; Exception("密码长度不够")
# 2> raise 主动抛出异常
raise ex
# 提示用户输入密码
try:
print(input_password())
except Exception as result:
print(result)
运行结果&#xff1a;
希望本文所述对大家Python程序设计有所帮助。