創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務器提供商,新人活動買多久送多久,劃算不套路!
創(chuàng)新互聯(lián)公司是專業(yè)的夏縣網(wǎng)站建設公司,夏縣接單;提供成都做網(wǎng)站、網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行夏縣網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!這篇文章主要介紹Python關鍵字global全局變量的作用,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
變量作用域
一般在函數(shù)體外定義的變量成為全局變量,在函數(shù)內(nèi)部定義的變量稱為局部變量。
全局變量所有作用域都可用,局部變量只能在本函數(shù)可用,變量的使用順序是,局部變量 > 全局變量, 也就是說:優(yōu)先使用局部變量
那么問題來了, 如果想在函數(shù)內(nèi)使用全局變量,或改變?nèi)肿兞康闹担?應該怎么做呢?
global關鍵字
為了解決函數(shù)內(nèi)使用全局變量的問題,python增加了global關鍵字, 利用它的特性, 可以指定變量的作用域。
global關鍵字的作用:聲明變量var是全局的
代碼實例
實例1:
函數(shù)優(yōu)先使用局部變量
str = 'global' def func1(): str = 'local' print(str) func1() print(str)
輸出結果
local global
實例2:
在沒有局部變量的情況下, 使用全局變量
str = 'global' def func1(): print(str) func1() print(str)
輸出結果
global global
實例3:
改變?nèi)肿兞康闹担?通過實例1可以看到, 函數(shù)內(nèi)賦值并不能改變?nèi)肿兞康闹?,所以需要global關鍵字
str = 'global' def func1(): global str str = 'local' print(str) func1() print(str)
輸出結果
local local
其他用法
你可以使用同一個global語句指定多個全局變量。
例如
global var1, var2, var3
特殊類型
字符串、數(shù)字類型是不能被在局部被修改的,除非使用global關鍵字,但是 列表,字典是可修改,但不能重新賦值,如果需要重新賦值,需要在函數(shù)內(nèi)部使用global定義全局變量
代碼實例1:
list = ['global', 'pythontab.com'] def func1(): list.append('bbs.pythontab.com') print(list) func1() print(list)
輸出結果
['global', 'pythontab.com', 'bbs.pythontab.com'] ['global', 'pythontab.com', 'bbs.pythontab.com']
發(fā)現(xiàn)上面的list并沒有使用global但是值卻改變了, 說明列表是可以在局部被修改的
代碼實例2:
list = ['global', 'pythontab.com'] def func1(): list = ['docs.pythontab.com'] print(list) func1() print(list)
結果:
['docs.pythontab.com'] ['global', 'pythontab.com']
局部變量賦值不能改變?nèi)肿兞康闹?/p>
以上是“Python關鍵字global全局變量的作用”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關知識,歡迎關注創(chuàng)新互聯(lián)-成都網(wǎng)站建設公司行業(yè)資訊頻道!