本文將詳細分析python的全局變量與局部變量,學過php的人都知道,php裡面的全局變量是無法在function裡面去使用的,只有超全局變量才可以,那麼python會怎麼處理全局變量與局部變量呢?下面我們來看一下:
其實python裡面的全局變量,一般跟c語言裡面是一樣的
language = 'python'
def foo1():
language = 'hello' # 這裡是局部變量
print(language ) # 打出hello,並且不會影響全局變量language (全局那個bar仍然是'python')
def foo2():
print(language ) # 打出python # 因為沒有聲明局部變量所以python會搜索全局的language ,這個bar是全局的
def foo3():
global language # 告訴python下面的bar是全局的
language = 'hello' # 這裡是全局變量
print(language) # 打出hello,全局的language 已經改為hello不再是python了
#再打印一下language 看一下
print(language)#打印出hello,因為在foo3裡全局變量已經被改變了這也說明使用這種方式可以更改python的全局變量
但是這與php裡面不同:
$name = 'php';
function foo1{
echo $name;
}
foo1 //將會得到一條警告:name變量不存在
所以各位同學在做python開發時一定要注意區分