22 lines
345 B
Python
22 lines
345 B
Python
|
# test scoping rules
|
||
|
|
||
|
# explicit global variable
|
||
|
a = 1
|
||
|
def f():
|
||
|
global a
|
||
|
global a, a # should be able to redefine as global
|
||
|
a = 2
|
||
|
f()
|
||
|
print(a)
|
||
|
|
||
|
# explicit nonlocal variable
|
||
|
def f():
|
||
|
a = 1
|
||
|
def g():
|
||
|
nonlocal a
|
||
|
nonlocal a, a # should be able to redefine as nonlocal
|
||
|
a = 2
|
||
|
g()
|
||
|
return a
|
||
|
print(f())
|