当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python contextlib.closing用法及代码示例


用法:

contextlib.closing(thing)

返回一个在块完成后关闭thing 的上下文管理器。这本质上相当于:

from contextlib import contextmanager

@contextmanager
def closing(thing):
    try:
        yield thing
    finally:
        thing.close()

并让您编写如下代码:

from contextlib import closing
from urllib.request import urlopen

with closing(urlopen('https://www.python.org')) as page:
    for line in page:
        print(line)

无需显式关闭 page 。即使发生错误,退出with 块时也会调用page.close()

相关用法


注:本文由纯净天空筛选整理自python.org大神的英文原创作品 contextlib.closing。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。