創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買(mǎi)多久送多久,劃算不套路!
小編給大家分享一下Python中局部變量和全局變量的定義:,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
我們先來(lái)看一下局部變量和全局變量的定義:
局部變量:在函數(shù)中定義的變量,作用域是當(dāng)前函數(shù),只對(duì)當(dāng)前函數(shù)起作用。
全局變量:在代碼開(kāi)頭定義的變量,作用域是整段代碼,對(duì)整段代碼起作用。
先看下面的實(shí)例, 最后給結(jié)論。
name = 'PythonTab' def func1(): print('my name is %s' %(name)) name = 'PythonTab.com' print('my name is %s' %(name)) func1() print(name)
輸出結(jié)果
my name is PythonTab my name is PythonTab.com default
結(jié)論:當(dāng)全局變量和局部變量相同時(shí),函數(shù)內(nèi)部?jī)?yōu)先使用局部變量, 如果沒(méi)有局部變量則使用全局變量
如果我們想在函數(shù)內(nèi)部,使局部變量對(duì)全局變量產(chǎn)生作用,那么我們可以在函數(shù)中使用gloabl,下面我們來(lái)看
name = 'default' def func2(): global name name = 'PythonTab.com' print(name) func2() print(name)
輸出結(jié)果
PythonTab.com PythonTab.com
我們?cè)賮?lái)看
nameList =['Python','Tab','.com'] def func3(): nameList[0] = 'python' func3() print(nameList)
輸出結(jié)果
['python','Tab','.com']
nameList =['Python','Tab','.com'] def func4(): nameList = [] func4() print(nameList)
輸出結(jié)果
['Python','Tab','.com']
這里可以看到nameList這個(gè)全局變量改變了,函數(shù)內(nèi)部沒(méi)有調(diào)用global,卻改變了全局變量。因?yàn)樵趐ython中,列表、字典等如果只是修改其中元素的值,可以不用gloabl,如果是修改整個(gè)列表,必須是有g(shù)loabl。
nameList =['Python','Tab','.com'] def func5(): gloabl nameList nameList = [] func5() print(nameList)
總結(jié):局部函數(shù)只作用于該函數(shù)內(nèi),全局函數(shù)作用于整段代碼,如果要在函數(shù)內(nèi)修改全局變量的值,使用gloabl。如果只修改列表,字典等中的某個(gè)值,可以不用global也可以修改全局變量。
以上是“Python中局部變量和全局變量的定義:”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!
本文題目:Python中局部變量和全局變量的定義:-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://www.ekvhdxd.cn/article16/dhosdg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、網(wǎng)站改版、品牌網(wǎng)站制作、手機(jī)網(wǎng)站建設(shè)、搜索引擎優(yōu)化、網(wǎng)站設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容
移動(dòng)網(wǎng)站建設(shè)知識(shí)