Steve Holden <[EMAIL PROTECTED]> writes: > If a function uses a global variable then you have to initialize the > same global variable in another program that uses it: yet another > piece of setup you will forget to do.
If the global variable belongs to the module, then it is up to the module to initialize it. A different program program will simply import the same module and automatically get the same variable, properly initialized. One reason why a singleton's attribute may be better than a global variable is that it's easier to later add a callback when the value is changed without breaking the interface. A module cannot react to module.somevar = value; on the other hand, a singleton can implement __setattr__ that reacts to module.singleton.attr = value. -- http://mail.python.org/mailman/listinfo/python-list