Python单例模式

因为最近的项目多次涉及到了单例模式,所以做个小笔记。

老师之前用到的只是在整个项目中的某一个文件自定义一个类,然后在该py文件中实例化一个对象,别的文件调用这只实例化过一次的类的对象就叫他单例模式,提出质疑

目前只会一种真正的单例模式:

class single_instance(object):
    __instance=None
    def __init__(self):
        pass

    def __new__(cls, *args, **kwargs):
        if cls.__instance==None:
            cls.__instance=object.__new__(cls,*args,**kwargs)
        return cls.__instance

a=single_instance()
b=single_instance()
print(a)
print(b)
输出结果如下:
<__main__.singleton object at 0x0000016D5191D320>
<__main__.singleton object at 0x0000016D5191D320>



原文地址:https://www.cnblogs.com/575dsj/p/7717797.html