Accessing and updating global variables among several modules
pinard at iro.umontreal.ca
Thu Jul 17 22:05:25 CEST 2003
> The problem is caused by Python creating two copies of the module that is
> passed to the interpreter.
We were recently bitten by a variation on this problem.
A co-worker and I were writing one module each for a single project, both
modules were to derive classes from a common base class from the same module
`listes'. Everything was to be installed in a single package `Lc'.
In his module, he wrote:
from Lc import listes
while in my module I wrote:
In fact, both `import' worked, yet `listes' was not the same object for each
of our viewpoints, and so, our classes did not have a common base. Object
initialisation was modifying a supposedly common registry of created
objects, kept as a class variable in the base, so there was a problem.
P.S. - Or something similar, I'm not sure I remember correctly. So many
things happen between a particular day and the next one! :-)
François Pinard http://www.iro.umontreal.ca/~pinard
More information about the Python-list