想象一个系统(Python),其中不同的部分不断地与给定对象的一个实例交互。为此实例提供全局访问点的最佳方法是什么?
到目前为止,我只能考虑根据需要在__init__.py
和import
模块中构建(Singleton)实例:
# __init__.py
class Thing(object, Singleton):
pass
TheThing = Thing()
__all__ = ['TheThing']
有没有更好的方法来为TheThing
提供全局访问点?
谢谢,
学家
答案 0 :(得分:5)
不要在python中使用singletons
。 Python模块是很棒的单例(它们只被初始化一次并且随处可用)如果需要,你可以将一个全局变量合二为一。