python 全域性變數

2021-08-20 13:13:54 字數 1013 閱讀 7241

example1.

全域性變數不修改值,只是引用時,在**都可以直接引用

a=1b=[2,3]

def func():

print a

print b

if __name__ == "__main__":

func()

輸出:a=1  b=[2,3]

example2.

全域性變數修改值,

a=1b=[2,3]

def func():

a=4b[0]=1

print a

print b

if __name__ == "__main__":

func()

輸出:a=4  b=[1,3]

該種情形下全域性變數值被修改,在函式體內變為區域性變數,  但b仍為全域性變數

example3.

全域性變數修改值,但引用時新增 global a 宣告

a=1b=[2,3]

def func():

global a

a=4print a

print b

if __name__ == "__main__":

func()

輸出:a=4  b=[2,3]

該種情形下全域性變數值被修改,在函式體內仍為全域性變數

example4.

全域性變數修改值,但開始時新增 global a 宣告

global a

b=[2,3]

def func():

global a

a=4print a

print b

if __name__ == "__main__":

func()

輸出:a=4  b=[2,3]

該種情形下a為全域性變數

結論:引用全域性變數,不需要golbal宣告,修改全域性變數,需要使用global宣告,特別地,列表、字典等如果只是修改其中元素的值,可以直接使用全域性變數,不需要global宣告。

python 全域性變數

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

Python 全域性變數

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

python全域性變數

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