Python之全域性變數篇

2022-08-24 23:18:09 字數 1817 閱讀 7814

python裡面全域性變數有兩種靈活的用法:

1 宣告法

在檔案開頭宣告全域性變數

在具體函式中使用該變數時,需要事先宣告 global variable,否則系統將該變數視為區域性變數。

constant = 0                                  #定義了乙個全域性變數,最好將全域性變數大寫

def modifyconstant() :

global constant                    

#在方法體中要使用全域性變數,要先進行宣告

print 『constant_1=%d』  %constant

constant += 1

return

if __name__ == '__main__' :

modifyconstant()

print 『constant_2=%d』  %constant

輸出結果:

constant_1=0

constant_2=1

2模組法(推薦)

把全域性變數定義在乙個單獨的模組中:

#gl.py

gl_1 = 'hello'

gl_2 = 'world'

在其它模組中使用

#a.py

import gl

def hello_world()

print gl.gl_1, gl.gl_2

#b.py

import gl

def fun1()

gl.gl_1 = 'hello'

gl.gl_2 = 'world'

第二種方法,適用於不同檔案之間的變數共享,而且一定程度上避免了開頭所說的全域性變數的弊端,推薦!

python裡面全域性變數有兩種靈活的用法:

1 宣告法

在檔案開頭宣告全域性變數

在具體函式中使用該變數時,需要事先宣告 global variable,否則系統將該變數視為區域性變數。

constant = 0                                  #定義了乙個全域性變數,最好將全域性變數大寫

def modifyconstant() :

global constant                    

#在方法體中要使用全域性變數,要先進行宣告

print 『constant_1=%d』  %constant

constant += 1

return

if __name__ == '__main__' :

modifyconstant()

print 『constant_2=%d』  %constant

輸出結果:

constant_1=0

constant_2=1

2模組法(推薦)

把全域性變數定義在乙個單獨的模組中:

#gl.py

gl_1 = 'hello'

gl_2 = 'world'

在其它模組中使用

#a.py

import gl

def hello_world()

print gl.gl_1, gl.gl_2

#b.py

import gl

def fun1()

gl.gl_1 = 'hello'

gl.gl_2 = 'world'

第二種方法,適用於不同檔案之間的變數共享,而且一定程度上避免了開頭所說的全域性變數的弊端,推薦!

python 全域性變數

應該盡量避免使用全域性變數。不同的模組都可以自由的訪問全域性變數,可能會導致全域性變數的不可預知性。對全域性變數,如果程式設計師甲修改了 a的值,程式設計師乙同時也要使用 a,這時可能導致程式中的錯誤。這種錯誤是很難發現和更正的。全域性變數降低了函式或模組之間的通用性,不同的函式或模組都要依賴於全域...

Python 全域性變數

應該盡量避免使用全域性變數。不同的模組都可以自由的訪問全域性變數,可能會導致全域性變數的不可預知性。對全域性變數,如果程式設計師甲修改了 a的值,程式設計師乙同時也要使用 a,這時可能導致程式中的錯誤。這種錯誤是很難發現和更正的。全域性變數降低了函式或模組之間的通用性,不同的函式或模組都要依賴於全域...

python全域性變數

python中global關鍵字主要作用是宣告變數的作用域。在c語言中,由於變數一定是先宣告,後使用,所以我們可以清楚的知道,現在使用的變數是全域性還是區域性,比如 cpp view plain copy inta 5 void test void void test1 void void main...