Python 异常处理的基本语法 try/except

答案:Python通过try/except机制捕获并处理运行时错误,避免程序中断;可使用多个except分别处理不同异常,或用Exception捕获所有异常并获取错误信息;else在无异常时执行,finally始终执行,常用于资源清理,提升程序健壮性。

在 Python 中,异常处理是一种用来应对程序运行时错误的机制。通过 try/except 语句,可以捕获并处理可能出现的异常,避免程序因错误而中断执行。

基本语法结构

最基本的异常处理语法如下:

try:
    # 可能出现异常的代码
    pass
except SomeException:
    # 处理特定异常
    pass

当 try 块中的代码触发了与 except 子句匹配的异常类型时,程序会跳转到对应的 except 块执行处理逻辑,之后继续向下运行,不会终止程序。

捕获多种异常

一个 try 语句可能引发不同类型的异常,可以通过多个 except 分别处理:

try:
    num = int(input("请输入一个数字: "))
    result = 10 / num
except ValueError:
    print("输入的不是有效数字!")
except ZeroDivisionError:
    print("不能除以零!")

这样可以根据不同的错误原因给出相应的提示或处理方式。

通用异常捕获

如果想捕获所有类型的异常,可以使用基类 Exception 或更宽泛的 Exception 类型:

try:
    result = 10 / 0
except Exception as e:
    print(f"发生了一个错误:{e}")

使用 as e 可以获取异常实例,便于查看具体出错信息。但要注意,过度使用通用异常捕获可能会掩盖本应被发现的编程错误。

else 和 finally 的使用

除了 try 和 except,还可以配合 else 和 finally 增强控制流:

try:
    file = open("data.txt", "r")
    content = file.read()
except FileNotFoundError:
    print("文件未找到")
else:
    print("文件读取成功")
finally:
    print("清理工作完成")
  • else:仅当 try 块中没有异常时执行,适合放置“成功后”的操作。
  • finally:无论是否发生异常都会执行,常用于资源释放、关闭文件等清理操作。

基本上就这些。try/except 是 Python 中处理运行时错误的核心工具,合理使用能让程序更健壮。