[Python-Dev] Explicit Lexical Scoping (pre-PEP?)
skip at pobox.com
skip at pobox.com
Sat Jul 8 00:10:04 CEST 2006
Guido> Well, personally I'm for allowing full rebinding semantics but
Guido> only when a 'global' (or 'nonlocal') statement is used
Guido> first. Making augmented assignment automatically imply 'global'
Guido> etc. seems too magical to me.
So, if I understand correctly, in the presence of a global statement search
just goes up the lexical chain looking for the first occurrence of the
variable to modify?
x = 0
def f():
x = 1
def g():
global x
x = 2
print x
g()
print x
f()
print x
Today it prints
2
1
2
You're suggesting it will print
2
2
0
?
Sounds reasonable to me. If we're talking py3k I'd chuck "global" as a
keyword though and replace it with something like "outer".
Skip
More information about the Python-Dev
mailing list