Python中的单例

发布时间:2019-07-02 13:36:38编辑:auto阅读(1356)

    单例:是指创建对象时,在同一个类中只能访问同一个内存地址,
    作用:单例可以实现不通模块之间的数据共享
    #定义单列类
    class Singleton(object):
    #定义类属性保存创建对象结果
    singleton = None
    #是否第一次初始化
    is_first = False
    def new(cls, *args, **kwargs):
    #判断类属性是否为None,非空表示要创建对象
    if not cls.singleton:
    #保存创建对象
    cls.
    singleton = object.new(cls)
    #对象创建以后以及第一次创建都需要把结果返回
    return cls.singleton
    def
    init(self, name, age):
    #判断是否是第一次进行初始化,不是第一次,则不再初始化
    #一般我们只需要对
    new进行判断,确定每次创建指向的内存地址不变
    if not self.
    class.is_first:
    self.name = name
    self.age = age
    #初始化完成,设置成已经初始化状态
    self.class.__is_first = True

    代码运行结果如下:
    Python中的单例

关键字

上一篇: as3 get flashvars

下一篇: Python时间处理