Python with语句用法原理详解
with用法理解
Overview
with与with之后的object一起,起到了抛出异常和单独生成一个空间让代码在空间里运行的效果。
实验代码
classA:
def__init__(self):
self.a=0
def__enter__(self):
print('enter')
def__exit__(self,exc_type,exc_val,exc_tb):
print('exit')
if__name__=='__main__':
a=A()
witha:
print('firststep')
print(1/0)
print('lastsetp')
print('continuerunning')
print('continuerunning')
print('continuerunning')
print('continuerunning')
上述代码输出结果为
enter
firststep
exit
ZeroDivisionError:divisionbyzero
代码理解
根据上述代码的测试结果可以看出:
with语句先运行,with之后对象的__enter__()方法
然后运行with空间的代码
1.1.当with空间代码出错后,会直接运行__exit__()方法,然后抛出异常
1.2当with空间代码没有错误时,程序按顺序__enter()__>>逻辑语句>>exit()>>之后的代码继续运行
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
热门推荐
10 广西考试祝福语结婚简短
11 猪年祝福语简短小孩
12 元旦祝福语送长辈简短
13 恭喜二宝祝福语简短
14 祝福语暖心话简短
15 国庆中秋祝福语简短兄弟
16 朋友订婚的祝福语简短
17 送弟弟中秋祝福语简短
18 爱生日祝福语简短独特