design_patterns_singleton.py

Created by valmontechno

Created on January 14, 2024

354 Bytes


def singleton(class_):
    instances = {}
    def getinstance(*args, **kwargs):
        if class_ not in instances:
            instances[class_] = class_(*args, **kwargs)
        return instances[class_]
    return getinstance

@singleton
class MyClass:
    pass
  
s1 = MyClass()
s2 = MyClass()

print(id(s1) == id(s2))