兩種方法:1.宣告法 2.模組法
1.宣告法
在檔案開始生命全域性變數(為了區別,一般大寫),在具體函式中,具體使用時,加上「global 變數名」。
示例:
import結果:osimport
sysa = 3b = 5
deffuc():
global
a
global
b
"fuc_a:
" +str(a)
"fuc_b:
" +str(b)
if__name__ == "
__main__":
print"a:
" +str(a)
print"b:
" +str(b)
b += 1 //改變了全域性變數b
fuc()
可以看出任何地方可以改變全域性變數,這既是好事也是壞事。當出現多個模組或函式時,若都需要依賴全域性變數,此時很難搞清現在全域性變數到底是多少了。下面的模組法可以使得在不同檔案中呼叫全域性變數時,實現全域性變數的共享。
2.模組法
把要宣告的全域性變數寫到乙個固定的檔案(例如con.py)中,別的檔案呼叫之(import con)
示例:
#filename:con.py
a = 34b = 45
#filename: file1.py結果:import
conprint
con.a
del2.b = 100
print con.b
#結果:filename:file2.py
import
conprint
con.a
print con.b
python 全域性變數
應該盡量避免使用全域性變數。不同的模組都可以自由的訪問全域性變數,可能會導致全域性變數的不可預知性。對全域性變數,如果程式設計師甲修改了 a的值,程式設計師乙同時也要使用 a,這時可能導致程式中的錯誤。這種錯誤是很難發現和更正的。全域性變數降低了函式或模組之間的通用性,不同的函式或模組都要依賴於全域...
Python 全域性變數
應該盡量避免使用全域性變數。不同的模組都可以自由的訪問全域性變數,可能會導致全域性變數的不可預知性。對全域性變數,如果程式設計師甲修改了 a的值,程式設計師乙同時也要使用 a,這時可能導致程式中的錯誤。這種錯誤是很難發現和更正的。全域性變數降低了函式或模組之間的通用性,不同的函式或模組都要依賴於全域...
python全域性變數
python中global關鍵字主要作用是宣告變數的作用域。在c語言中,由於變數一定是先宣告,後使用,所以我們可以清楚的知道,現在使用的變數是全域性還是區域性,比如 cpp view plain copy inta 5 void test void void test1 void void main...