因為最近的項目多次涉及到了單例模式,所以做個小筆記。
老師之前用到的只是在整個項目中的某一個文件自定義一個類,然后在該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>
