异常的finally
异常的finally
finally表示的是无论是否异常都要执行的代码,例如关闭文件
try:
f = open('test.txt', 'r')
except Exception as result:
print(result)
f = open('test.txt', 'w')
else:
print('没有异常')
finally:
f.close()
什么时候用 finally
- 需要“无论成功失败都要收尾”的场景
- 关闭文件、关闭网络连接
- 释放锁、恢复状态
更推荐的做法
对文件这类资源,更推荐优先使用 with(关联:with语句 / 上下文管理器),它可以自动关闭资源,避免手写 finally 的遗漏风险。