如果將全局變量的名字聲明在一個函數體內的時候,全局變量的名字就能被局部變量給覆蓋掉。
>>> def foo():
m=3
def bar():
n=4
m=9
print(m)
print(m+n)
print(m)
bar() #這個bar函數輸出m和m+n,兩個參數使用的是局部變量
>>> foo()
3
9
13
雖然存在多個函數的嵌套,但你不能訪問超過兩個的作用域。(Python2.1之前存在這個問題,現在沒有了)
>>> def foo():
m=3
def bar():
n=4
print(m+n)
print(m)
bar()
>>> foo()
3
7