标签:实例化 init ret 一个 color 有一个 需要 __init__ 动作
class A(object): def __init__(self,*args,**kwargs): print("init 方法") def __new__(cls, *args, **kwargs): print("new 方法") return object.__new__(cls) print(id(A())) a=A() print(id(a)) """ 运行结果 new 方法 init 方法 2750930711504 new 方法 init 方法 2750930711504 总结 1、__new__ 至少要一个参数 cls ,代表实例化的类,此参数是实例化的实话由python 解释器提供 2、__new__ 必须有返回值,返回实例化cls出来的实例,还可以return 父类__new__出来的实例,或者直接object的__new__出来的实例 3、__init__有一个参数self ,是由__new__出来的实例,__init__是在创建出实例的时候初始化了动作,不需要返回值。 """
标签:实例化 init ret 一个 color 有一个 需要 __init__ 动作
原文地址:https://www.cnblogs.com/Xingtxx/p/12819404.html