【发布时间】:2018-10-17 07:05:48
【问题描述】:
阅读代码库我有时会遇到名为 ContextManager 的类。诸如 Python 之类的编程语言具有上下文管理器的概念。上下文管理器到底是什么?什么目的?
【问题讨论】:
标签: computer-science
阅读代码库我有时会遇到名为 ContextManager 的类。诸如 Python 之类的编程语言具有上下文管理器的概念。上下文管理器到底是什么?什么目的?
【问题讨论】:
标签: computer-science
当程序运行时,某些操作仅在特定时间被允许。例如,您只能在打开文件时读取文件。
上下文管理器会跟踪此类信息并帮助自动结束未完成的部分。在 Python 中,它们有一种特殊的语法,以 with 开头:
with context_manager_thingy(something) as x:
x.dosomething
离开 with 块调用上下文管理器的清理方法。
【讨论】: