class Singleton(object):
def __new__(cls, *args, **kwargs):
if not hasattr(cls, '_instance'):
cls._instance = super(Singleton, cls).__new__(cls)
return cls._instance
class MyClass(Singleton):
def __init__(self, value):
self.value = value
a = MyClass(10)
b = MyClass(20)
print(a.value) # 20
print(b.value) # 20
print(a is b) # True