跳到主要内容
CodeWiki
练习
学习路径
学习方向
速查表
试验场
术语表
AI 时代
搜索
⌘K
中文
英语
中文
练习
学习路径
学习方向
速查表
试验场
术语表
AI 时代
中文
英语
中文
练习
/
测验
/
Python
/
上下文管理器
上下文管理器的 `__enter__()` 获取第一个子资源后失败,应怎样处理?
来自 上下文管理器
Python 3.14
进阶
3分钟
上下文管理器的 `__enter__()` 获取第一个子资源后失败,应怎样处理?
传播异常前撤销部分获取,因为 Python 不会调用它的 `__exit__()`。
返回 True,让 Python 调用不带异常信息的 `__exit__()`。
依靠垃圾回收立即运行 `__exit__()`。
把资源放进 `as` 目标,让调用方关闭它。
检查
向 AI 询问这道练习
报告错误
下一道练习
动态获取资源时,为什么应立即为每项资源调用 `stack.enter_context()`?
测验
有新版本可用
重新加载