Python中的异常处理是程序健壮性的重要保障,通过合理使用try
/except
结构,可以优雅地处理运行时错误。以下是关键知识点:
常见异常类型 📚
- ValueError:当函数接收到正确类型但不合法的值时触发
❓示例:int("abc")
- TypeError:类型不匹配的错误
❌示例:"hello" + 123
- IndexError:序列索引超出范围
🔍示例:list[3]
(当列表长度不足时) - KeyError:字典中不存在指定键
⚠️示例:dict["nonexistent_key"]
异常处理结构 🧩
try:
# 可能引发异常的代码
except SpecificError as e:
# 异常处理逻辑
else:
# 无异常时执行
finally:
# 始终执行的代码(如资源释放)
自定义异常 🛠️
通过继承Exception
类创建自定义异常类型:
class CustomError(Exception):
pass
raise CustomError("自定义错误信息")
最佳实践 ✅
- 避免空
except
:不要捕获所有异常,应明确处理特定类型 - 使用
finally
:确保关键资源(如文件句柄)被正确释放 - 记录异常信息:结合
logging
模块进行日志追踪 - 多重捕获:处理嵌套异常时使用多个
except
块
需要更深入学习异常处理的进阶技巧?可以查看 Python异常处理详解 了解如何使用with
语句处理异常或上下文管理器的高级用法。