一段時間沒有使用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.宣告法 該方法是...