python全域性變數的用法詳解

2021-10-04 11:44:41 字數 2247 閱讀 5439

一段時間沒有使用python來寫**,就發現以前學習的很多語法都忘了。看來還是當初這方面的專案做的好不夠多,沒有系統性的運用和學習,導致了很多語法不能順手拈來。在接下來的這個專案中,

一定要把遇到的一些python知識不熟悉的地方還有遺忘的重新梳理一下,對python要達到靈活運用的境界,不能單純是能敲**,要達到學,做,教的三者合一。就是在做中學,學中做,做中教,教中學的

境界。全域性變數的作用域

一般在函式體外定義的變數成為全域性變數,在函式內部定義的變數稱為區域性變數。全域性變數所有作用域都可用,區域性變數只能在本函式可用,變數的使用順序是,區域性變數 > 全域性變數, 也就是說:優先使用區域性變數

global關鍵字:

為了解決函式內使用全域性變數的問題,python增加了global關鍵字, 利用它的特性, 可以指定變數的作用域。

global關鍵字的作用:宣告變數var是全域性的

例項一:函式內賦值不能改變全域性變數值:

global val

val =

10def

test1()

:global val

val =

5print

('test1 global val:'

,val)

deftest2()

: val =

8print

('test2 global val:'

,val)

class

test()

:def

__init__

(self)

:#global val

val =

5#zoo()

#xy()

defconnect

(self)

:print

("class in connect global val:"

,val)if5

== val:

print

("global val is:"

,val)

if __name__==

"__main__"

: test(

).connect(

)

執行結果:

class

in connect global val:

10

可以看出,函式內賦值並不能改變全域性變數的值,所以需要global關鍵字

例項二:全域性變數值改變必須要有global關鍵字:

'''

'''global val

val =

10def

test1()

:global val

val =

5print

('test1 global val:'

,val)

deftest2()

: val =

8print

('test2 global val:'

,val)

class

test()

:def

__init__

(self)

:#global val

val =

5 test1(

) test2(

)def

connect

(self)

:print

("class in connect global val:"

,val)if5

== val:

print

("global val is:"

,val)

if __name__==

"__main__"

: test(

).connect(

)

測試結果:

test1 global val:

5test2 global val:

8class

in connect global val:

5global val is

:5

可以看出,全域性變數的值改變,必須要有global關鍵字。不然就被當成了區域性變數。這點一定要記好。

python全域性變數的用法詳解

一段時間沒有使用python來寫 就發現以前學習的很多語法都忘了。看來還是當初這方面的專案做的好不夠多,沒有系統性的運用和學習,導致了很多語法不能順手拈來。在接下來的這個專案中,一定要把遇到的一些python知識不熟悉的地方還有遺忘的重新梳理一下,對python要達到靈活運用的境界,不能單純是能敲 ...

python中全域性變數的用法

在python中,全域性變數一般有兩種使用方式 第一種 是在乙個單獨的模組中定義好,然後在需要使用的全域性模組中將定義的全域性變數模組匯入。第二種 直接在當前的模組中定義好,然後直接在本模組中通過global宣告,然後使用 具體的方法如下所示 第一種 solr url def tt global s...

Python定義全域性變數的用法

全域性變數是程式語言中常見的一種變數,通過全域性定義,可以是某物件函式建立,也可以是本程式任何位置建立,能夠被本程式中的所有物件或函式進行引用,全域性變數的定義有利於程式的變數共享,簡化了新增和修改的程式。和c語言一樣,python也具有全域性變數,其定義全域性變數的用法有兩種 1.宣告法 該方法是...