Python上下文管理器用法及實例解析
這篇文章主要介紹了Python上下文管理器用法及實例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
with上下文管理器
語法:with ... as ... 如:with open('test.txt', 'r') as fp,打開一個文件作為文件句柄對象賦值給fp
with是一個語句塊,上下文管理器中里面實現了兩個方法:enter, exit,enter是進入代碼塊前自動調用的方法,exit是
退出with語句塊時調用的,例如,文件對象在退出上下文管理器時調用了exit中的self.close()語句,所以就不用手動去關閉文件
只要重寫了enter方法和exit兩個方法,就可以自定義一個with上下文管理器
class SayHello(object):
def __init__(self, text):
self.text = text
def __enter__(self):
return self #必須返回對象
def __exit__(self, exc_type, exc_value, traceback):
self.text = "Bye!"
with SayHello("Hello") as greet:
print(greet.text)
print(greet.text)
輸出:
Hello Bye!
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
python 批量修改 labelImg 生成的xml文件的方法
這篇文章主要介紹了python 批量修改 labelImg 生成的xml文件的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-09-09
PyCharm中Matplotlib繪圖不能顯示UI效果的問題解決
這篇文章主要介紹了PyCharm中Matplotlib繪圖不能顯示UI效果的問題解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-03-03

