黑马程序员技术交流社区

标题: 【广州Python】面试题:装饰器实现单例 [打印本页]

作者: xianqiuhua    时间: 2018-11-7 18:18
标题: 【广州Python】面试题:装饰器实现单例
面试题:装饰器实现单例

[Python] 纯文本查看 复制代码
def single(cls):
    instance = dict()
    def wrapped_cls(*args, **kwargs):
        if cls not in instance:
            instance[cls] = cls(*args, **kwargs)
        return cls
    return wrapped_cls


@single
class MyClass(object):
    pass


if __name__ == '__main__':
    t1 = MyClass()
    t2 = MyClass()
    print(id(t1))
    print(id(t2))







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2