Python中的单例类

0 投票
2 回答
1288 浏览
提问于 2025-04-16 14:08

在Python中,如何给一个类实现单例属性?请给出以下类的一个例子。我想了解的是,如果这个类的实例已经存在,那么就返回这个已有的实例;如果不存在,就创建一个新的实例。

  class Test:
     name
     age

     def getobj(self):
        return (self.name+self.age)

    t= Test()

2 个回答

2

我个人觉得在这种类上用单例设计模式不太合适,因为单例模式的意思是你只能有一个实例,永远也不会有第二个。那你为什么只想要一个员工呢?

你可以考虑把它用在比如员工管理器(employeeManager)或者员工列表(employeeList)上,虽然我对这两个也不是特别喜欢。

7

你不应该把单例模式实现成一个类。用一个模块来实现,这样作为单例效果很好。

另外:有没有简单优雅的方法来定义单例模式?

撰写回答