python中如何使用全局變量,相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。
作為一家“創(chuàng)意+整合+營(yíng)銷”的成都網(wǎng)站建設(shè)機(jī)構(gòu),我們?cè)跇I(yè)內(nèi)良好的客戶口碑。創(chuàng)新互聯(lián)提供從前期的網(wǎng)站品牌分析策劃、網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、網(wǎng)站建設(shè)、創(chuàng)意表現(xiàn)、網(wǎng)頁(yè)制作、系統(tǒng)開(kāi)發(fā)以及后續(xù)網(wǎng)站營(yíng)銷運(yùn)營(yíng)等一系列服務(wù),幫助企業(yè)打造創(chuàng)新的互聯(lián)網(wǎng)品牌經(jīng)營(yíng)模式與有效的網(wǎng)絡(luò)營(yíng)銷方法,創(chuàng)造更大的價(jià)值。
1. python全局變量在函數(shù)和類定義外面,如果某個(gè)函數(shù)或類想使用這個(gè)全局變量,需要添加global 關(guān)鍵字加以說(shuō)明,否則就是重新定義了一個(gè)和全局變量名字相同的局部變量,參見(jiàn)如下例子:
a = 2 def change(): global a a = 3 print a print a change() print a
打印結(jié)果是:
2
3
3
如果是如下代碼:
a = 2 def change(): a = 3 print a print a change() print a
打印結(jié)果是:
2
3
2
2. 不需要添加global關(guān)鍵字也能在函數(shù)內(nèi)部使用全局變量的情況:
如果在某個(gè)函數(shù)或類里面沒(méi)有給該全局變量賦值,就不需要添加 global關(guān)鍵字加以說(shuō)明
例子:
x = 3 def f(y): y = x+y return y print f(2)
上面的代碼可以正常運(yùn)行,結(jié)果就是5
但是如果改成下面的代碼就會(huì)報(bào)錯(cuò)了:
x = 3 def f(y): x = x+y return y print f(2)
因?yàn)檫@個(gè)時(shí)候在函數(shù)f里面給全局變量x賦值了,此時(shí)必修加global關(guān)鍵字說(shuō)明才可以這么做,所以可以修改為如下代碼:
x = 3 def f(y): global x x = x+y return y print f(2)
此時(shí)結(jié)果是2
看完上述內(nèi)容,你們掌握python中如何使用全局變量的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!