Python: 练习 函数装饰器实现单例
def decorator(cls): _instance = {} print(f"instance: {_instance}") def inner(): if cls not in _instance: _instance[cls] = cls() print(f"instance: {_instance}") return _instance[cls] return inner @decorator class ClassA(object): def __init__(self): self.a = 10 obj_1 = ClassA() obj_2 = ClassA() print(id(obj_1)) print(id(obj_2)) # ClassA = decorator(ClassA) # obj_A = ClassA() # print(obj_A.a)