很好理解,global語句是為了宣告在函式內定義的乙個變數不是區域性的而是全域性的。
#-*-coding=gbk
def gl(x):
print x# 第一次輸出時使用形參變數x = 1
x = 0# 為x賦值 x = 0(區域性)
print x# 此時輸出區域性變數
x = 1
gl(x)
print x# 驗證函式外主塊中x沒受影響
輸出:
>>> 10
1
#-*-coding=gbk
def gl():
global x# 宣告x變數不是區域性的,而是全域性的
print x
x = 0
print x
x = 1
gl()
print x
輸出:10
0下面是《python核心程式設計》裡的例子:
#-*-coding=gbk
is_this_global = 'xyz'
def foo():
global is_this_global
this_is_local = 'abc'
is_this_global = 'def'
print this_is_local + is_this_global
foo()
print is_this_global# 這裡驗證is_this_global得到的是函式內賦值的def
輸出:
>>>
abcdef
def
Python全域性變數與global語句
如果將全域性變數的名字宣告在乙個函式體內的時候,全域性變數的名字能被區域性變數給覆蓋掉。code1 bar 100 def foo print ncalling foo bar 200 print in foo bar is bar print in main bar is bar foo prin...
python全域性變數語句global
在python中使用函式體外的變數,可以使用global語句 變數可以是區域性域或者全域性域。定義在函式內的變數有區域性作用域,在乙個模組中最高端別的變數有全域性作用域。在編譯器理論裡著名的 龍書 中,阿霍 賽西和烏爾曼作了如下總結 宣告適用的程式的範圍被稱為了宣告的作用域。在乙個過程中,如果名字在...
PHP全域性變數global與 GLOBAL詳解
總結 a 1全域性變數相當於有3個變數,函式外部的變數,函式內部的變數,及 global的超全域性變數。global是全域性唯一的,而 var在為全域性變數的別名。b 無論函式內部外部,只要曾經宣告過全域性變數,則 global為全域性的,無需再次宣告 c 在函式內部unset var1 不會影響外...