Python:单例 - 模块的方式

简介:Python天然支持单例模式。原理:文件A,编写类,并且实例化。文件B,导入A中对象s,分别取不同的别名,就是产生了不同的对象,但是内存地址此时一样。
即:完成了单例模式。

singleton.py

class Singleton(object):
    def __init__(self, name):
        self.name = name

    def run(self):
        print(self.name)


s = Singleton("Tom")

具体创建对象.py

from singleton import s as v1
from singleton import s as v2
print(id(v1))
print(id(v2))
print(v1)
print(v2)
v1.run()
v2.run()

运行结果:

1795402861440

1795402861440

<singleton.Singleton object at 0x000001A206598B80>

<singleton.Singleton object at 0x000001A206598B80>

Tom

Tom

你可能感兴趣的:(python,开发语言)