用法:
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 contextlib.contextmanager用法及代碼示例
- Python contextlib.AsyncContextDecorator用法及代碼示例
- Python contextlib.AsyncExitStack用法及代碼示例
- Python contextlib.ExitStack.pop_all用法及代碼示例
- Python contextlib.redirect_stdout用法及代碼示例
- Python contextlib.aclosing用法及代碼示例
- Python contextlib.ExitStack用法及代碼示例
- Python contextlib.nullcontext用法及代碼示例
- Python contextlib.ContextDecorator用法及代碼示例
- Python contextlib.suppress用法及代碼示例
- Python contextvars.ContextVar.reset用法及代碼示例
- Python contextvars.Context.run用法及代碼示例
- Python configparser.ConfigParser.readfp用法及代碼示例
- Python configparser.ConfigParser.BOOLEAN_STATES用法及代碼示例
- Python configparser.BasicInterpolation用法及代碼示例
- Python configparser.ExtendedInterpolation用法及代碼示例
- Python configparser.ConfigParser.SECTCRE用法及代碼示例
- Python configparser.ConfigParser.read用法及代碼示例
- Python collections.somenamedtuple._replace用法及代碼示例
- Python collections.somenamedtuple._asdict用法及代碼示例
注:本文由純淨天空篩選整理自python.org大神的英文原創作品 contextlib.closing。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。