通过装饰器,用来记录项目中所有创建过的函数对象或者类对象
def wrapper(cls):
instance ={} #创建一个字典用来存放创建出来的单列对象
def _fun(*args,**kwargs):
#判断该类在不在字典中,
if cls not in instance:
#没创建就创建一次,并把它加入到字典中
instance[cls]=cls(*args,**kwargs)
#在字典中说明创建过了,不做任何操作
return instance[cls]
return _fun
@wrapper
class Test2(object):
def __init__(self,name):
self.name=name


浙公网安备 33010602011771号