从序列合成上下文管理器
context-compose的Python项目详细描述
上下文组合
编写上下文管理器的Python实用程序库(3.6+)
动机
当您想将上下文管理器动态组合在一起,而内置方法太难看或太不灵活时。在
转这个:
importosif__name__=="__main__":ifos.environ.get("DEBUG")andos.environ.get("PROFILE":withdebugger(),profile():main()elifos.environ.get("DEBUG"):withdebugger():main()elifos.environ.get("DEBUG"):withdebugger():main()
在这方面:
^{pr2}$当您的代码有一个with
块时,impotent_manager
是一个有用的替代品,您宁愿使用单一模式,因此必须向它提供上下文管理器。在
工作原理
在幕后,它使用contextlib.ExitStack按列表顺序对上下文管理器进行分层。在
- 项目
标签: