MackS wrote:
>     print "inside fun(): " + global_var
...
> How can I get the changed value to "persist" in such a way that it
> isn't reset when control leaves fun()? Why is it even reset in the
> first place? After all, the module has already been imported (and the
> initialization of global_var executed) *before* fun() runs, right?
>
> Any clarification and help in solving this would be great

It _does_ persist and it _isn't_ reset.  Try:

import shared
print shared.global_var

at the end of your program, and you will see that you have bound the
identifier global_var in your main program to the same immutable object
that the identifier global_var in shared was bound to, and then you
_changed_ the identifier global_var in shared to point to a different
object.

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to