with使用场景
文件读取和关闭数据库连接和断开线程上锁和解锁处理异常(待研究)
class TestFunc():
def __init__(self
, var_a
, var_b
):
self
.var_a
= var_a
self
.var_b
= var_b
print("这里将会第一个执行, 初始化类")
def __enter__(self
):
print("这里将会第二个执行, 打开管理器,并将对象赋值给test_obj")
return self
def __exit__(self
, exc_type
, exc_val
, exc_tb
):
print(exc_type
)
print(exc_val
)
print(exc_tb
)
print("这里将会第四个执行, __exit__在程序最后被执行")
return True
def test(self
):
print("这里将会第三个执行")
a
= "a" + 1
return self
with TestFunc
(1, 2) as test_obj
:
test_obj
.test
()
转载请注明原文地址: https://mac.8miu.com/read-516206.html