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)