python析构
2016-03-14 17:40
603 查看
__del__,析构函数不能手动调用,而是每个对象引用使用完之后系统自动回收垃圾,且按照字典顺序(A-Za-z)来回收。 class NewClass(object): num_count = 0 # 所有的实例都共享此变量,即不单独为每个实例分配 def __init__(self,name): self.name = name NewClass.num_count += 1 def __del__(self): NewClass.num_count -= 1 print ("Del",self.name)ewClass("Hello") bb = aa cc = aa del bb,cc,aa print ("Over")
这个例子手动删除掉全部的应用所以会先执行
__del__再输出Over:
Del Hello Over
这里例子中只手动删除一部分引用,则程序运行最后才会执行
__del__,也就是先输出Over再执行
__del__
class NewClass(object): num_count = 0 # 所有的实例都共享此变量,即不单独为每个实例分配 def __init__(self,name): self.name = name NewClass.num_count += 1 def __del__(self): NewClass.num_count -= 1 print ("Del",self.name) def test(): print ("aa") aa = NewClass("Hello") bb = aa cc = aa del bb,cc print ("Over")
输出结果:
Over Del Hello
相关文章推荐
- python ORM 模块peewee(四): Model类源码初探
- python ORM 模块peewee(三): Model的建立
- python中sys.path使用
- virtualenv -- python虚拟沙盒
- python--因子变量转换为哑变量
- win7 python gensim安装
- python学习笔记-socket
- 王亟亟的Python学习之路(10)-匿名函数
- 王亟亟的Python学习之路(10)-匿名函数
- 实例讲解Python中函数的调用与定义
- python开发工具
- python 正则表达式 () findall
- Python shuffle() 函数
- 汉诺塔java和python的实现
- python中的is和==
- python文件读写模式
- 【2016年Esri开发者大会亮点解析】支持Python扩展,Pro扩展再辟蹊径
- 【2016年Esri开发者大会亮点解析】全新ArcGIS Python API,弥补Web端使用Python空白
- python print 打印unicode string的时候 去掉u' remove u'
- 欢迎使用CSDN-markdown编辑器