python上下文管理器的基本介绍
python上下文管理器的基本介绍
本文教程操作环境:windows7系统、Python3.9.1,DELLG3电脑。
1、概念
上下文管理器就是支持上下文管理器协议的对象,实现了__enter__()和__exit__()方法。
2、基本语法
withEXPRasVAR:
BLOCK
3、两种方法
__enter__:在进入with语法块之前调用,返回值会赋值给with的target
__exit__:在退出with语法块时调用,一般用作异常处理
4、实例
importtime
classdemo:
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))
withdemo('counting'):
n=10000000
whilen>0:
n-=1
#counting:1.36000013351
以上就是python上下文管理器的基本介绍,大家在初步掌握with方法后,可以结合上下文管理器的一起使用,说不定会有新的收获。更多Python学习教程请关注IT培训机构:千锋教育。
相关推荐HOT
更多>>Python的缩进规则
和其它程序设计语言(如Java、C语言)采用大括号“{}”分隔代码块不同,Python采用代码缩进和冒号(:)来区分代码块之间的层次。在Python中,对于类...详情>>
2023-11-11 23:15:31python五大异常处理机制
我们明白了什么是异常后,那么发现异常后怎么处理,便是我们接下来要解决的问题。这里将处理异常的方式总结为五种。1、默认异常处理机制“...详情>>
2023-11-11 22:02:33python中any函数如何使用?
python中any函数如何使用?在python中,如果想要判断一个tuple或者list是否全部为空、0、False,可以使用any函数。使用any函数,当全为空、0、Fa...详情>>
2023-11-11 15:18:19Python的信号库Blinker有何用法?
python的信号库Blinker有何用法?本文教程操作环境:windows7系统、Python3.9.1,DELLG3电脑。作为一个信号库,使用时候是支持一对一以及一对多...详情>>
2023-11-11 14:18:20