本文針對Python的全局變量實現方法簡述如下:
先來看下面一段測試程序:
count = 0def Fuc(count): print count count += 1for i in range(0, 10): Fuc(count)
運行結果是:
>>>0000000000
很顯然,這并不是我們想要的結果。
針對這一問題的解決方法就是采用全局變量:
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
運行結果為:
>>>3456789101112hello13
需要注意:哪里需要全局變量,哪里聲明一下;但是函數千萬不要傳參數,比如用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]
結果同上
列表也可以比較簡單的實現這一功能
新聞熱點
疑難解答