在python的__enter__
and__exit__
用例的文件对象实现之外,没有人有真实的示例吗?最好是您自己的,因为我要尝试实现的是一种更好地概念化将要使用的情况的方法。
我已经读过了。
有很多用途。仅在标准库中,我们就有:
sqlite3
; 将连接用作上下文管理器会转换为提交或中止事务。
unittest
; 使用assertRaises
的上下文管理器可以让你维护一个异常引发的异常,那么测试方面。
decimal
; localcontext
管理小数位数精度,舍入和其他方面。
threading
诸如锁,信号量和条件之类的对象也是上下文管理器;让您获得一组语句的锁,等等。
该warnings
模块为您提供了一个上下文管理器来临时捕获警告。
Python自己的test.test_support
模块使用多个上下文管理器来检查特定的警告,捕获stdout
,忽略特定的异常并临时设置环境变量。
每当您想检测代码块何时开始和/或结束时,都想使用上下文管理器。在try:
与finally:
套件一起使用以确保清除之前,请使用上下文管理器。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句