1. 理解异常
异常是指程序运行期间发生的错误或异常情况,可能由各种原因引起,例如:
语法错误:代码中存在语法错误,导致程序无法编译或执行。
运行时错误:代码在运行时发生错误,例如除以零、
索引
超出范围、文件不存在等。
逻辑错误:代码逻辑不正确,导致程序行为不符合预期。
2. Python 异常处理机制
python
提供了异常处理机制来处理程序运行期间发生的异常,它主要包括
、
和
三个语句。
立即学习
“
Python免费学习笔记(深入)
”;
语句块用于指定要尝试执行的代码。
语句块用于指定当
语句块中发生异常时要执行的代码。
语句块用于指定无论
语句块是否发生异常,都要执行的代码。
3. 代码示例
在上面的示例中,
语句块用于尝试打开和读取文件,
语句块用于处理文件不存在的异常情况,
语句块用于无论是否发生异常,都关闭文件。
4. 常见异常类型
Python 3.14.3
微软官方的 Python 扩展,是 VS Code 安装量最高的扩展(209M+)。集成 IntelliSense(通过 Pylance)、调试(通过 Python Debugger)、代码检查、格式化、重构和单元测试等功能。支持 Jupyter Notebook、虚拟环境管理和多 Python 版本切换。
下载
Python
中有许多内置的异常类型,它们表示不同的错误或异常情况,例如:
:表示未定义的变量或函数。
:表示类型不匹配。
:表示无效的值。
:表示索引超出范围。
:表示字典中不存在的键。
程序员
可以通过
函数来获取当前发生的异常信息,并根据不同的异常类型来采取不同的处理方式。
5. 自定义异常类型
除了内置的异常类型之外,程序员还可以自定义异常类型来处理特定的错误或异常情况。例如,可以定义一个
异常类型来处理应用程序中发生的自定义错误:
在上面的示例中,
是一个自定义的异常类型,它继承自
类。当
函数抛出
异常时,
语句块捕获该异常并打印异常信息。
6. 总结
Python 异常处理机制是程序员在编写代码时必须掌握的关键技能之一,它可以帮助程序员优雅地处理程序运行期间发生的错误和异常情况,避免程序崩溃。
tryexceptfinallytryexcepttryfinallytry# 导入异常处理模块
import sys
# 定义一个函数来读取文件
def read_file(filename):
# 使用 try 语句块来捕获异常
try:
# 打开文件
with open(filename, "r") as f:
# 读取文件内容
data = f.read()
# 关闭文件
f.close()
# 使用 except 语句块来处理异常
except FileNotFoundError:
# 文件不存在时,打印错误信息
print("Error: File not found.")
# 使用 finally 语句块来释放资源
finally:
# 无论是否发生异常,都关闭文件
f.close()
# 调用函数来读取文件
read_file("data.txt")tryexceptfinallyNameErrorTypeErrorValueErrorIndexErrorKeyErrorsys.exc_info()MyErrorclass MyError(Exception):
def __init__(self, message):
self.message = message
def my_function():
# 抛出自定义异常
raise MyError("An error occurred.")
try:
my_function()
except MyError as e:
# 处理自定义异常
print(e.message)MyErrorExceptionmy_function()MyErrortry