请问单例模型时候,为什么两个对象的id不一样
class Singleton():
class _A():
def __init__(self):
pass
def display(self):
return id(self)
_instance = None
def __init__(self):
if Singleton._instance is None:
Singleton._instance = Singleton._A()
def __getattr__(self, attr):
return getattr(self._instance, attr)
if __name__ == "__main__":
s1 = Singleton()
s2 = Singleton()
print(id(s1),s1.display())
print(id(s2),s2.display())
print(s1 is s2) # 此处输出False
为何
print(s1 == s2) 是False呢