通过装饰器,用来记录项目中所有创建过的函数对象或者类对象

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

image

posted @ 2025-09-04 16:47  大海一个人听  阅读(6)  评论(0)    收藏  举报