Python单例模式
Python单例模式,和字面上的意思是差不多,只能创建一个实例化对象。当我们在资源共享的时候,避免由于资源操作的时候导致性能或者损耗的时候,或者是方便资源之间的通信的时候,我们就会用上单例模式。
class A:
__instance = None # 定义一个类变量
def __new__(cls, *args, **kwargs):
if not cls.__instance: # 判断类变量是否有值,如果没值的话说明还没创建对象
# 调用父类的new方法创建一个对象
cls.__instance = object.__new__(cls) # 将创建的对象赋值给类变量
return cls.__instance # 必须返回对象(多说一句,返回的对象是给__init__方法,进行初始化)
else: # 如果__instance有值说明,对象已经被创建,返回创建过的对象
return cls.__instance