扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流

创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计制作、做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的洞头网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
1、概念
上下文管理器就是支持上下文管理器协议的对象,实现了 __enter__() 和 __exit__() 方法。
2、基本语法
with EXPR as VAR: BLOCK
3、两种方法
__enter__:在进入 with 语法块之前调用,返回值会赋值给 with 的 target
__exit__:在退出 with 语法块时调用,一般用作异常处理
4、实例
import time
class demo:
def __init__(self, label):
self.label = label
def __enter__(self):
self.start = time.time()
def __exit__(self, exc_ty, exc_val, exc_tb):
end = time.time()
print('{}: {}'.format(self.label, end - self.start))
with demo('counting'):
n = 10000000
while n > 0:
n -= 1
# counting: 1.36000013351
以上就是python上下文管理器的基本介绍,大家在初步掌握with方法后,可以结合上下文管理器的一起使用,说不定会有新的收获。

我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流