while 1 vs while True
tjreedy at udel.edu
Wed Dec 15 22:27:19 CET 2004
> >>> import pdb
> >>> pdb.x = "Darn writeable module dictionaries"
> >>> from pdb import x
> >>> x
> >>>'Darn writeable module dictionaries'
> If Python really does behave that way, that bug should be fixed
The fact that the attributes of Python modules, like those of classes (and
functions and instances) are externally mutable is a design feature, not a
bug. (Call Python's dynamicity a design bug if you will, but that is
different from a plain 'bug'.)
This allows, for instance, programs to have an in-memory blackboard module
with across-module variables that all other modules can write to as well as
read. This design has been recommended several times on this list. We
would, of course, all agree that having modules arbitrarily poking each
others attributes is a bad idea. Indeed, that is the rationale for
isolating all such pokes into a single blackboard module.
Terry J. Reedy
More information about the Python-list