semi-newbie module namespace confusion
fredrik at pythonware.com
Tue Oct 4 08:08:29 CEST 2005
pnau at sjm.com wrote:
> The main jist of the problem is that I'm trying add data from one
> module to a list and a dictionary in another module, and it doesn't
> seem to stick over there.
> The programs below seem to illustrate the issue. (The results follow
> the programs).
> Why are the results different from runs of the two programs? The
> output of nameSpaceTestB.py makes sense to me, but I just don't get why
> nameSpaceTestA.py does what it does.
> I'm sure the reason is very simple, but I just don't see it. Please,
> can someone shed some light on the issue for me?
running a piece of python code as a script isn't the same thing as
importing it as a module:
"If you run a module as a script (i.e. give its name to the inter-
preter, rather than importing it), it's loaded under the module
If you then import the same module from your program, it's re-
loaded and reexecuted under its real name. If you're not careful,
you may end up doing things twice."
try changing your "printing from"-statements to
print "printing from", __name__
to see what you're really doing.
More information about the Python-list