python析構方法__del__


析構方法

此方法一般無須定義,因為Python是一門高級語言,程序員在使用時無需關心內存的分配和釋放,因為此工作都是交給Python解釋器來執行,所以,析構函數的調用是由解釋器在進行垃圾回收時自動觸發執行的。

示例代碼

"模擬open的函數,可以使用析構方法,釋放內存,關閉打開的文件"

class Open:
    def __init__(self,filepath,mode="r",encode="utf-8"):
        self.f = open(filepath,mode=mode,encoding=encode)
        
    def write(self):
        pass
    
    def __getattr__(self, item):
        return getattr(self.f,item)
    
    def __del__(self):
        print("--->del")
        self.f.close()

f = Open("a.txt","w")
del f #關閉文件,釋放內存


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM