异常
异常
异常(Exception)用于描述程序运行过程中出现的错误与异常状态。掌握异常的目标不是“把所有错误吞掉”,而是让程序在出错时:
- 给出清晰信息(方便定位)
- 在必要时进行恢复或降级
- 保证资源正确释放(文件、网络连接等)
基本结构
try:放可能出错的代码except:捕获并处理异常else:没有异常才执行finally:无论是否异常都执行(常用于释放资源)
建议把“可能出错”的语句尽量缩小到关键几行,避免捕获范围过大导致定位困难。
捕获策略(常见原则)
- 优先捕获“更具体”的异常类型(例如
ValueError),再考虑更泛化的异常 - 需要访问异常详情时用
as获取异常对象(见 捕获异常描述信息) - 谨慎使用捕获所有异常(见 捕获所有异常),避免掩盖真实问题