_del_()方法
阿新 • • 發佈:2018-10-01
默認 pre 創建對象 真的 用戶 time 引用計數 %s ani
創建對象後,python解釋器默認調用_init_()方法;
當刪除一個對象後,python解釋器也會默認調用一個方法,這個方法為 _del_()方法
import time class Animal(object): #構造方法 def _init_(self,name): print("_init_方法被調用") self._name = name #方法 def _del_(self): print("_del_方法被調用") print("%s對象馬上要被幹掉了。。。"%self._name) #創建對象 dog = Animal(“哈皮狗”) #刪除對象 del dog cat = Animal(“波斯貓”) cat2 = cat cat3 = cat print("----馬上 刪除cat對象") del cat print("----馬上 刪除cat2對象") del cat2 print("---馬上 刪除cat3對象") del cat3 print(“程序2秒後結束”) time.sleep(2)
總結:
*當有一個班裏保存了對象的引用時,此對象的引用計數就會增加1
*當使用del刪除變量指向的對象時,如果對象的引用計數不會1,比如3,那麽此時只會讓這個用戶引用計數減1,即變為2,當再次調用del時,變為1,如果再調用1次del,此時會真的把對象刪除。
_del_()方法