class Student(): def __new__(cls, *args, **kwargs):##创建类的实例 print('__new__') return object.__new__(cls)##此处返回才会调用__init__ def __init__(self):##初始化类的实例 print('__init__') class NewInt(int): def __new__(cls, value): return int.__new__(cls,abs(value)) #单例横式 class Person(): __isinstance=False def __new__(cls, *args, **kwargs): if cls.__isinstance: return cls.__isinstance else: cls.__isinstance = object.__new__(cls) return cls.__isinstance def __init__(self): print('3333') if __name__=='__main__': stu=Student() nint=NewInt(-2.45) print(nint) ##2 p1=Person() p2 = Person() print(p1,p2)
标签:__,.__,python,init,new,isinstance,cls From: https://www.cnblogs.com/howhy/p/17881341.html