Python中的单例设计模式【多测师_王sir】
#coding=utf-8 """ =========================== Author:多测师_王sir Time:2020-10-06 22:49 Wechat:xiaoshubass website:www.duoceshi.cn =========================== """ class MyClass(object): __obj = None @classmethod def __new__(cls, *args, **kwargs): if not cls.__obj: #如果没有创建对象、就调用父类的new方法创建一个 cls.__obj = super().__new__(cls) return cls.__obj else: #如果创建了、则把第一次的对象返回 return cls.__obj #实例化==》创建对象 m1 = MyClass() m2 = MyClass() m3 = MyClass() print(id(m1)) print(id(m2)) print(id(m3)) 运行结果:内存地址都是一样的、说明根据MyClass类创建的对象都是同一个对象。 1549646200784 1549646200784 1549646200784