Fix Python – Is there a simple, elegant way to define singletons? [duplicate]

Question

Asked By – Jamie

There seem to be many ways to define singletons in Python. Is there a consensus opinion on Stack Overflow?

Now we will see solution for issue: Is there a simple, elegant way to define singletons? [duplicate]


Answer

I don’t really see the need, as a module with functions (and not a class) would serve well as a singleton. All its variables would be bound to the module, which could not be instantiated repeatedly anyway.

If you do wish to use a class, there is no way of creating private classes or private constructors in Python, so you can’t protect against multiple instantiations, other than just via convention in use of your API. I would still just put methods in a module, and consider the module as the singleton.

This question is answered By – Staale

This answer is collected from stackoverflow and reviewed by FixPython community admins, is licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0