Python单例模式

单例模式,多次实例化只返回同一个类实例。

class SimpleOne(object):
    __one = None

    def __init__(self):
        super().__init__()

    def __new__(cls, *args, **kwargs):
        if not cls.__one:
            cls.__one = object.__new__(cls, *args, **kwargs)
        return cls.__one


if __name__ == "__main__":
    id_1 = id(SimpleOne())
    id_2 = id(SimpleOne())
    print("id_1 equal id_2", id_1 == id_2)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本系列文章是希望将软件项目中最常见的设计模式用通俗易懂的语言来讲解清楚,并通过Python来实现,每个设计模式都是...
    geekpy阅读 19,828评论 6 36
  • 单例模式(SingletonPattern)一般被认为是最简单、最易理解的设计模式,也因为它的简洁易懂,是项目中最...
    成热了阅读 4,310评论 4 34
  • Python单例模式 单例模式 单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。...
    smile念殇阅读 461评论 0 4
  • 1 场景问题# 1.1 读取配置文件的内容## 考虑这样一个应用,读取配置文件的内容。 很多应用项目,都有与应用相...
    七寸知架构阅读 6,894评论 12 68
  • 1 单例模式的动机 对于一个软件系统的某些类而言,我们无须创建多个实例。举个大家都熟知的例子——Windows任务...
    justCode_阅读 1,490评论 2 9