《人生苦短,我用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 捕获。

相关内容

热门资讯

今日头条“sohoo poke... 您好:这款游戏是可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特别好,总是好...
透视辅助!红龙poker有辅助... 透视辅助!红龙poker有辅助吗,aapoker插件,传授开挂辅助平台(透视有挂工具);无需打开直接...
盘点透视"wpk免费... 盘点透视"wpk免费辅助"hhpoker免费辅助器(透视)开挂辅助软件(果真有挂)1、下载安装好hh...
透视辅助!德普之星辅助器app... 透视辅助!德普之星辅助器app,大菠萝手游辅助,详细开挂辅助安装(透视有挂秘笈);无需打开直接搜索加...
安装程序教程“wepoker辅... wepoker辅助脚本是一款可以让一直输的玩家,快速成为一个“必胜”的ai辅助神器,有需要的用户可以...
传授开挂"wepok... 传授开挂"wepoker可以免费玩吗"wepoker有没有机器人(透视)开挂辅助平台(真的有挂);无...
透视辅助!wepoker看底牌... 透视辅助!wepoker看底牌,哈糖大菠萝怎么开挂,传授开挂辅助插件(透视的确有挂) >>您好:软件...
曝光辅助"we-po... 曝光辅助"we-poker辅助器"aapoker怎么开辅助器(透视)开挂辅助插件(有挂工具)>>您好...
玩家必备教程“德普之星怎么开辅... 玩家必备教程“德普之星怎么开辅助”开挂(透视)辅助软件(AI教程竟然有挂);无需打开直接搜索薇:13...
透视辅助!pokemmo脚本辅... 透视辅助!pokemmo脚本辅助,xpoker辅助工具,分享开挂辅助安装(透视确实有挂)pokemm...