DZone Snippets is a public source code repository. Easily build up your personal collection of code snippets, categorize them with tags / keywords, and share them with the world

Snippets has posted 5883 posts at DZone. View Full User Profile

Singleton Pattern In Python

09.18.2005
| 5701 views |
  • submit to reddit
        
class Borg:
    __shared_state = {}
    def __init__(self):
        self.__dict__ = self.__shared_state
What a pythonic way to use Singleton. It uses shared-state
approach where you can actually have many instances as you want
but they all share the same state. See Alex's <a href=http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/66531>recipe</a>.
>>> b = Borg()
>>> b.x = 1
>>> c = Borg()
>>> c.x
1