python单例的使用详解
单例,让类创建的对象在系统中只有唯一的实例。
1、定义一个类属性,初始值为None,记录单个对象的引用。
2、重写__new__方法。
3、当类属性为is None时调用父类方法分配空间。
将结果记录在类属性中。
4、返回类属性记录的对象引用。
实例
class MusicPlayer(object): # 定义类属性记录单例对象引用 instance = None def __new__(cls, *args, **kwargs): # 1. 判断类属性是否已经被赋值 if cls.instance is None: cls.instance = super().__new__(cls) # 2. 返回类属性的单例引用 return cls.instance
python如何实现初始化执行一次:1、定义类属性init_flag标记是否已经初始化。初始值为False。2、在__init__方法中判断init_flag。如果是False,则进行初始化。3、将init_flag设置为True。当再次自 ...