# Python 单例模式示例代码
class Singleton:
_instance = None # 类属性,用于存储唯一的实例
def __new__(cls, *args, **kwargs):
# 重写 __new__ 方法,确保类只有一个实例
if not cls._instance:
cls._instance = super(Singleton, cls).__new__(cls, *args, **kwargs)
return cls._instance
# 测试单例模式
singleton1 = Singleton()
singleton2 = Singleton()
print(singleton1 is singleton2) # 输出: True,表明两个变量指向同一个实例
Singleton
类通过重写 __new__
方法来确保类的唯一实例。_instance
是一个类属性,用来保存创建的实例。如果 _instance
为空,则创建一个新的实例并保存;否则返回已有的实例。singleton1 is singleton2
的比较可以验证两个变量是否指向同一个实例。如果输出为 True
,则说明单例模式生效。上一篇:python 去重
下一篇:pythoncsv文件的操作
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站