95:__del__()析构方法和垃圾回收机制

###__del__方法(析构函数)和垃圾回收机制

__del__方法称为“析构方法”,用于实现对象被销毁时所需的操作。比如:释放对象占用的资源,例如:打开的文件资源、网络连接等。

Python 实现自动的垃圾回收,当对象没有被引用时(引用计数为 0),由垃圾回收器调用__del__方法。

我们也可以通过 del 语句删除对象,从而保证调用__del__方法。

系统会自动提供__del__方法,一般不需要自定义析构方法。

# 析构函数
class Person:

    def __del__(self):
        print("销毁对象:{0}".format(self))


p1 = Person()
p2 = Person()
del p2
print("程序结束")

输出结果:

D:\work\python\three\venv\Scripts\python.exe D:\work\python\three\mypy07.py 
销毁对象:<__main__.Person object at 0x0000027A58162D40>
程序结束
销毁对象:<__main__.Person object at 0x0000027A58162FE0>

进程已结束,退出代码0

 

posted @ 2022-11-19 16:03  竹蜻蜓vYv  阅读(28)  评论(0编辑  收藏  举报