Python 提供了 异常处理机制 来捕获和处理运行时错误,防止程序崩溃。常见的异常包括 ZeroDivisionError、FileNotFoundError、IndexError 等。
1. try-except
语句
使用 try-except
语句可以捕获异常,避免程序中断。
try:
x = 1 / 0 # 触发 ZeroDivisionError
except ZeroDivisionError:
print("除数不能为零!")
输出:
除数不能为零!
多个 except
处理不同类型异常
try:
num = int(input("输入一个数字: "))
result = 10 / num
except ValueError:
print("请输入有效的整数!")
except ZeroDivisionError:
print("除数不能为零!")
2. else
和 finally
else
:当try
语句 没有异常 时执行finally
:无论是否发生异常,都会执行
try:
file = open("example.txt", "r")
content = file.read()
except FileNotFoundError:
print("文件未找到!")
else:
print("文件内容读取成功!")
finally:
if 'file' in locals() and not file.closed:
file.close()
print("文件已关闭。")
3. raise
关键字(手动触发异常)
可以使用 raise
关键字主动抛出异常。
def check_age(age):
if age < 18:
raise ValueError("年龄必须大于等于 18 岁")
return "年龄验证通过"
try:
print(check_age(15))
except ValueError as e:
print(f"发生错误: {e}")
输出:
发生错误: 年龄必须大于等于 18 岁
4. 自定义异常类
可以通过继承 Exception
创建自定义异常类。
class CustomError(Exception):
pass
try:
raise CustomError("自定义异常发生")
except CustomError as e:
print(f"捕获异常: {e}")
5. 参考资料
出站链接
站内链接
Python 异常处理可以提高代码健壮性,避免程序崩溃,建议在关键代码中使用。🚀
发表回复