码迷,mamicode.com
首页 > 其他好文 > 详细

一分钟了解contextlib模块

时间:2018-07-17 16:41:04      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:context   imp   enter   manager   contex   管理   man   extman   管理器   

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模块

标签:context   imp   enter   manager   contex   管理   man   extman   管理器   

原文地址:https://www.cnblogs.com/saolv/p/9323232.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!