python 构造函数__new__(cls[,...]),析构器__del__()
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 构造函数__new__(cls[,...]),析构器__del__()相关的知识,希望对你有一定的参考价值。
1 class capstr(str): 2 def __new__(cls,string): 3 string=string.upper() 4 return str.__new__(cls,string) 5 6 a=capstr(‘ifuckyou‘) 7 print a
__new__是构造函数-------实例对象的建立
继承字符串类str,把字符串大写,然后用str.__new__()返回处理后的大写字符串
不同于__init__(),init是初始化函数,new才是构造函数,真正返回一个实例对象的函数,init并不返回实例对象
__del__ 当实例对象要被析构
当要销毁一个对象时,__del__()就会被调用
主要是构造函数理解有一定的思考
以上是关于python 构造函数__new__(cls[,...]),析构器__del__()的主要内容,如果未能解决你的问题,请参考以下文章
python中单例模式的实现-通过闭包函数和魔术方法__new__实现单例模式