一分钟了解contextlib模块

Posted saolv

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一分钟了解contextlib模块相关的知识,希望对你有一定的参考价值。

cobtextlib模块用于简化上下文管理器,其内置装饰漆@contextmanager,我们通过编写一个被contextmanager装饰的generator来简化上下文管理。

from contextlib import contextmanager

@contextmanager
def aa():
    print (begin)    
    yield 1
    print (end)
    
with aa() as q:
    print (q)

‘‘‘
yiled之前的语句和yied相当于上下文管理器的enter方法
.yield的对象相当于enter返回的对象。yield后的语句相当于
上下文管理器的exit方法
‘‘‘
‘‘‘执行结果:
begin
1
end
‘‘‘

 

以上是关于一分钟了解contextlib模块的主要内容,如果未能解决你的问题,请参考以下文章

contextlib模块

Python标准库--contextlib模块

Python3标准库:contextlib上下文管理器工具

Python 上下文管理器模块--contextlib

python的上下文管理(contextlib)

一分钟带你了解正则