Python中用于异常处理的关键字包括try
、except
、else
、finally
和raise
,它们共同构成了一套完整的错误捕获与处理机制。 通过try
包裹可能出错的代码,except
捕获特定异常,else
处理无异常时的逻辑,finally
确保资源释放,而raise
可主动抛出异常。这些关键字使程序在遇到错误时仍能保持稳定运行,避免崩溃。
-
try-except
基础组合
try
块包含可能引发异常的代码,except
捕获并处理指定异常类型。例如,处理除零错误:python复制
try: result = 10 / 0 except ZeroDivisionError: print("除数不能为零")
-
多异常捕获与
else
子句
通过多个except
块或元组形式捕获多种异常,else
块仅在try
块无异常时执行:python复制
try: num = int(input("输入整数:")) except ValueError: print("输入无效") except ZeroDivisionError: print("除数不能为零") else: print(f"结果为:{10 / num}")
-
finally
的强制清理
无论是否发生异常,finally
块均会执行,常用于关闭文件或释放资源:python复制
try: file = open("data.txt", "r") except FileNotFoundError: print("文件不存在") finally: file.close() # 确保文件关闭
-
raise
主动抛出异常
开发者可通过raise
自定义异常,例如验证业务逻辑:python复制
if age < 0: raise ValueError("年龄不能为负")
合理使用这些关键字能显著提升代码健壮性。建议优先捕获具体异常类型,避免滥用通用Exception
,并结合finally
确保关键资源释放,让程序更可靠。