class singlecase(object):#类的名字随起
__instance=None #保存实例对象
def __init__(self,name,age):#创建一个实例
print(name,age)
pass
def __new__(cls, *args, **kwargs):
if not cls.__instance:#如果类属性的值为None 调用父类的new方法生成一个实例对象
cls.__instance=super(singlecase,cls).__new__(cls) # 调用父类__new__方法生成一个实例对象
return cls.__instance
else:#如果已经生成了实例对象则返回实例对象本身
return cls.__instance
pass
pass
xl=singlecase('小李',18)#创建实例对象
xl2=singlecase('小李',118)#创建实例对象
print(id(xl))#打印实例对象内存地址
print(id(xl2))
04-11
2389
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
08-24
126
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
08-29
904
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)