gpt4 book ai didi

python - 捕获上下文管理器期间发生的异常 - Python

转载 作者:行者123 更新时间:2023-11-28 19:50:13 24 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Using python “with” statement with try-except block

我正在使用 open 在 Python 中打开一个文件。我将文件处理封装在 with 语句中:

with open(path, 'r') as f:
# do something with f
# this part might throw an exception

这样我就可以确定我的文件已关闭,即使抛出异常也是如此。

但是,我想处理打开文件失败的情况(抛出 OSError)。一种方法是将整个 with block 放在 try: 中。只要文件处理代码不抛出 OSError,这就有效。

它可能看起来像:

try:
with open(path, 'rb') as f:
except:
#error handling
# Do something with the file

这当然不行,而且真的很难看。有这样做的聪明方法吗?

谢谢

PS: 我使用的是 python 3.3

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com