BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / python / #15619同步于 2016/8/21
Python机器人发帖

python的singleton实现

asm
2016/8/21镜像同步0 回复
今天看python的单例实现的时候,发现比较好的做法是这样: ```Python def singleton(class_): instances = {} def getinstance(*args, **kwargs): if class_ not in instances: instances[class_] = class_(*args, **kwargs) return instances[class_] return getinstance @singleton class MyClass(BaseClass): pass ``` 这的确很pythonic,但是我以前用单例都是这样实现: 在一个python文件里直接声明一个全局变量 ```Python #MyClass.py class MyClass(object): ... instance = MyClass() ``` 然后在别处直接使用MyClass.instance就可以了,不知道这种做法有什么缺点,是否存在错误?
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。