单例模式提供了一种将类的实例数限制为一个的策略。因此,同一对象始终由代码的不同部分共享。Singleton可以被认为是对全局变量的一种更优雅的解决方案,因为实际数据隐藏在Singleton类接口的后面。
以下代码是创建单例类的许多不同方法之一
class Singleton(object): _instance = None def __new__(class_, *args, **kwargs): if not isinstance(class_._instance, class_): class_._instance = object.__new__(class_, *args, **kwargs) return class_._instance class MyClass(Singleton, BaseClass): pass
这是一个真正的类