python 面向对象编程 之 上下文管理协议
生活随笔
收集整理的這篇文章主要介紹了
python 面向对象编程 之 上下文管理协议
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
with open('path', 'r' ,encoding='utf-8') as f:
代碼塊
?
上述就叫做上線文管理協議,即with語句,為了讓一個對象兼容with語句,必須在這個對象的類中聲明__enter__和__exit__方法。
?
上下文管理協議:
class Open:
def __init__(self,name):
self.name=name
def __enter__(self):
print('出現with語句 ,對象的__enter__被觸發,有返回值則賦值給as聲明的變量')
#return self
?
def __exit__(self,exc_type,exc_val,exc_tb):
print('重要代碼塊執行完后,在執行我!')
?
exc_type:? 異常類型
,exc_val: 異常值
,exc_tb: 追溯類型
轉載于:https://www.cnblogs.com/yanxiatingyu/p/9266056.html
總結
以上是生活随笔為你收集整理的python 面向对象编程 之 上下文管理协议的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux中一些简便的命令之wc
- 下一篇: NPOI Excel 导出学习 一 (基