目錄
with 上下文管理
finally 塊由於是否發生異常都會執行,通常我們放釋放資源的代碼。其實,我們可以通過 with 上下文管理,更方便的實現釋放資源的操作。
with 上下文管理的語法結構如下:
with context_expr [ as var]:
語句塊
with 上下文管理可以自動管理資源,在 with 代碼塊執行完畢後自動還原進入該代碼之前的現場或上下文。不論何種原因跳出 with 塊,不論是否有異常,總能保證資源正常釋放。極大的簡化了工作,在文件操作、網絡通信相關的場合非常常用。
with不是用來取代try...except...finally結構的, 只是作爲補充; 方便我們在文件管理,網絡通訊時的開發;
try:
with open("1b.txt") as f:
for line in f:
print(line)
except BaseException as e:
print("文件不存在")
輸出:
D:\wwwroot\pyiteam\venv\Scripts\python.exe D:/wwwroot/pyiteam/mypro_obj/mypy02.py
文件不存在
Process finished with exit code 0