1.创建单例类
class CCP(object):
def __new__(cls,*args,**kwargs):
if not hasattr(cls,'_instance'): # 如果类对象中没有'_instance'属性
cls._instance = super().__new__(cls,*args,**kwargs) # 则创建对象实例
return cls._instance # 返回对象实例
2.将其他对象更改为单例
class A(object):
def say(self):
print("hello")
class CCP(object):
def __new__(cls,*args,**kwargs):
if not hasattr(cls,'_instance'): # 如果没有对象实例
cls._instance = super().__new__(cls,*args,**kwargs) # 创建对象实例
cls._instance.a = A() # 将单例对象与需要单利化的对象绑定
return cls._instance # 返回单例对象,现在此单例对象的a属性是单利化的对象
a = CCP()
a.a.say()