上下文管理的两种方式
代码比较简单,只是简单的笔记,感谢那个不知道叫什么名字的老师
一般的应用场景:需要频繁连接和释放资源,或者某个代码块前后的固定执行语句
# -*- coding: utf-8 -*-
# @Time : 2019/1/27 3:21
# @Author : Meta
# @QQ : 239036082from contextlib import contextmanager# 方式1
class Qquery():def __enter__(self):print("进入")return selfdef __exit__(self, exc_type, exc_value, tb):print("退出")def query(self):print('query data')with Qquery() as q:q.query()# 方式二
@contextmanager
def book_mark():print('<<', end='')yieldprint('>>', end='')with book_mark():print('资治通鉴', end='')
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
