如何每周学习一个Python的contextlib模块?
- 内容介绍
- 文章标签
- 相关推荐
本文共计5116个文字,预计阅读时间需要21分钟。
专题地址:每周一个Python模块
同时,也欢迎关注我的微信公众号AlwaysBeta,获取更多精彩内容。
用于创建和使用上下文管理器的实用程序。
模块包含:- `contextlib`
专栏地址:每周一个 Python 模块
同时,也欢迎关注我的微信公众号 AlwaysBeta,更多精彩内容等你来。
用于创建和使用上下文管理器的实用程序。
contextlib 模块包含用于处理上下文管理器和 with 语句的实用程序。
Context Manager API
上下文管理器负责一个代码块内的资源,从进入块时创建到退出块后清理。例如,文件上下文管理器 API,在完成所有读取或写入后来确保它们已关闭。
with open('/tmp/pymotw.txt', 'wt') as f:f.write('contents go here')
# file is automatically closed
with 语句启用了上下文管理器,API 涉及两种方法:当执行流进入内部代码块时运行 __enter__() 方法,它返回要在上下文中使用的对象。当执行流离开 with 块时,调用上下文管理器的 __exit__() 方法来清理正在使用的任何资源。
本文共计5116个文字,预计阅读时间需要21分钟。
专题地址:每周一个Python模块
同时,也欢迎关注我的微信公众号AlwaysBeta,获取更多精彩内容。
用于创建和使用上下文管理器的实用程序。
模块包含:- `contextlib`
专栏地址:每周一个 Python 模块
同时,也欢迎关注我的微信公众号 AlwaysBeta,更多精彩内容等你来。
用于创建和使用上下文管理器的实用程序。
contextlib 模块包含用于处理上下文管理器和 with 语句的实用程序。
Context Manager API
上下文管理器负责一个代码块内的资源,从进入块时创建到退出块后清理。例如,文件上下文管理器 API,在完成所有读取或写入后来确保它们已关闭。
with open('/tmp/pymotw.txt', 'wt') as f:f.write('contents go here')
# file is automatically closed
with 语句启用了上下文管理器,API 涉及两种方法:当执行流进入内部代码块时运行 __enter__() 方法,它返回要在上下文中使用的对象。当执行流离开 with 块时,调用上下文管理器的 __exit__() 方法来清理正在使用的任何资源。

