《人生苦短,我用python·十》python的异常使用
创始人
2025-01-08 19:37:04
0

基本异常处理
Python 提供了 try…except 语句来处理异常。其基本结构如下:

try:     # 可能会引发异常的代码     risky_code() except ExceptionType as e:     # 处理异常的代码     handle_exception(e)  

示例

try:     x = 10 / 0 except ZeroDivisionError as e:     print("捕获到除零错误:", e)  

在这个示例中,当尝试除以零时,会引发 ZeroDivisionError 异常,并在 except 块中捕获和处理。

多个异常处理
你可以在 except 语句中处理多种不同类型的异常:

try:     x = int("not a number") except ValueError as e:     print("捕获到值错误:", e) except TypeError as e:     print("捕获到类型错误:", e)  

使用 else 和 finally
try…except 语句还可以与 else 和 finally 语句一起使用:

else 块中的代码仅在 try 块没有引发异常时执行。
finally 块中的代码无论是否引发异常都会执行,常用于清理资源。

try:     x = int(input("请输入一个整数: ")) except ValueError as e:     print("这不是一个整数!") else:     print("输入的整数是:", x) finally:     print("程序结束")  

自定义异常
你可以定义自己的异常类,以便在程序中引发和捕获:

class MyCustomError(Exception):     pass  def risky_function():     raise MyCustomError("这是一个自定义错误")  try:     risky_function() except MyCustomError as e:     print("捕获到自定义错误:", e)  

异常传递
异常可以被传递到调用栈的上层,直到被捕获:

def func1():     raise ValueError("错误信息")  def func2():     try:         func1()     except ValueError as e:         print("捕获到 func1 的异常:", e)  func2()  

在这个示例中,func1 引发的异常被 func2 捕获。

相关内容

热门资讯

辅助透视!wepoker钻石可... 辅助透视!wepoker钻石可以看底牌(透视)底牌透视挂辅助器(可靠开挂辅助安装教程)-哔哩哔哩;是...
第六分钟了解!秦皇岛麻将游戏有... 第六分钟了解!秦皇岛麻将游戏有挂(辅助挂)先前有挂(专业辅助揭秘教程)-哔哩哔哩;1、构建自己的微扑...
透视app!wepoker透视... 透视app!wepoker透视是真的,闲玩暗宝辅助插件,靠谱教程(有挂秘诀)-哔哩哔哩1)闲玩暗宝辅...
黑科技辅助!德州软件辅助(智能... 黑科技辅助!德州软件辅助(智能ai辅助插件安装)软件透明挂黑科技(竟然真的有挂)-哔哩哔哩;一、德州...
透视存在!德州局透视脚本下载安... 透视存在!德州局透视脚本下载安装最新版本(透视)底牌透视挂辅助底牌(可靠开挂辅助AI教程)-哔哩哔哩...
第三分钟了解!天天麻将川南可以... 第三分钟了解!天天麻将川南可以让系统发好牌(辅助挂)竟然真的有挂(专业辅助规律教程)-哔哩哔哩;天天...
透视私人局!wepoker辅助... 透视私人局!wepoker辅助器是真的,决战卡五星辅助修改器,解密教程(有挂讲解)-哔哩哔哩1、这是...
黑科技辅助!aapoker软件... 黑科技辅助!aapoker软件有猫腻(智能ai辅助插件安装)软件透明挂黑科技(原来存在有挂)-哔哩哔...
透视能赢!wepoker可以下... 透视能赢!wepoker可以下载游戏(透视)底牌透视挂辅助方法(可靠开挂辅助力荐教程)-哔哩哔哩;透...
第4分钟了解!桂林老k字牌辅助... 您好,桂林老k字牌辅助器这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家...