小编典典

有没有简单优雅的方法来定义单例?

python

似乎有很多方法可以在Python中定义单例。关于堆栈溢出是否有共识?


阅读 167

收藏
2020-12-20

共1个答案

小编典典

我没有真正的需要,因为具有功能(而不是类)的模块可以很好地用作单例。它的所有变量都将绑定到模块,该模块无论如何都无法重复实例化。

如果您确实希望使用类,则无法在Python中创建私有类或私有构造函数,因此,您只能通过使用API​​的约定来保护自己免受多重实例化。我仍然将方法放在模块中,并将模块视为单例。

2020-12-20