有人可以告诉我为什么这不是单例模式吗:
class preSingleton(object):
def __call__(self):
return self
singleton = preSingleton()
# singleton is actually the singleton
a = singleton()
b = singleton()
print a==b
a.var_in_a = 100
b.var_in_b = 'hello'
print a.var_in_b
print b.var_in_a
编辑:上述代码输出:
True
hello
100
非常感谢您。
第二部分
也许这样更好?
class Singleton(object):
def __new__(cls):
return cls
a = Singleton()
b = Singleton()
print a == b
a.var_in_a = 100
b.var_in_b = 'hello'
print a.var_in_b
print b.var_in_a
编辑:上述代码输出:
True
hello
100
再次感谢。
id(a)
和id(b)
来检查对象的身份。请提供实际输出。 - S.Lott