单例模式类装饰器

#定义一个单例模式的装饰器
def singleton(cls):
#定义实例容器
instances = {}

#定义嵌套方法
def wrapper(*args,**kwargs):
#判断装饰的类是否单例
if cls not in instances:
instances[cls] = cls(*args,**kwargs)
return instances[cls]

return wrapper

原文地址:https://www.cnblogs.com/Niuxingyu/p/10817698.html