strange unbound local error?
Pablo Ziliani
pablo at decode.com.ar
Sat Sep 29 14:18:23 EDT 2007
righes at arcor.de wrote:
> spam = 42
>
> def eggs():
> print spam
> spam = spam + 1
>
> if __name__=="__main__":
> eggs()
>
> This thows an UnboundLocalError at line 4 (print statement). But if I
> comment out line 5 (variable assignment), no error occurs.
>
> Can you explain me this, please?
Hi Enrico,
You need to say that you will be modifying the variable in the global
scope, like this:
spam = 42
def eggs():
global spam # <--here
print spam
spam = spam + 1
if __name__=="__main__":
eggs()
This can help you:
http://www.pasteur.fr/recherche/unites/sis/formation/python/ch04.html
Pablo
More information about the Python-list
mailing list