本文針對(duì)Python的全局變量實(shí)現(xiàn)方法簡(jiǎn)述如下:
先來(lái)看下面一段測(cè)試程序:
count = 0def Fuc(count): print count count += 1for i in range(0, 10): Fuc(count)
運(yùn)行結(jié)果是:
>>>0000000000
很顯然,這并不是我們想要的結(jié)果。
針對(duì)這一問(wèn)題的解決方法就是采用全局變量:
global aa = 3def Fuc(): global a print a a = a + 1if __name__ == "__main__": global a for i in range(10): Fuc()print 'hello' print a
運(yùn)行結(jié)果為:
>>>3456789101112hello13
需要注意:哪里需要全局變量,哪里聲明一下;但是函數(shù)千萬(wàn)不要傳參數(shù),比如用Fuc(a)是不行的。
解決方法2--列表:
示例代碼如下:
a = [3]def Fuc(): print a[0] a[0] = a[0] + 1if __name__ == "__main__": global a for i in range(10): Fuc() print 'hello' print a[0]
結(jié)果同上
列表也可以比較簡(jiǎn)單的實(shí)現(xiàn)這一功能
新聞熱點(diǎn)
疑難解答
圖片精選