本文针对python的全局变量实现方法简述如下:
先来看下面一段测试程序:
count = 0
def fuc(count):
print count
count += 1
for i in range(0, 10):
fuc(count)
运行结果是:
>>>
0
0
0
0
0
0
0
0
0
0
很显然,这并不是我们想要的结果。
针对这一问题的解决方法就是采用全局变量:
global a
a = 3
def fuc():
global a
print a
a = a + 1
if __name__ == “__main__”:
global a
for i in range(10):
fuc()print ‘hello’
print a
运行结果为:
>>>
3
4
5
6
7
8
9
10
11
12
hello
13
需要注意:哪里需要全局变量,哪里声明一下;但是函数千万不要传参数,比如用fuc(a)是不行的。
解决方法2–列表:
示例代码如下:
a = [3]
def fuc():
print a[0]
a[0] = a[0] + 1
if __name__ == “__main__”:
global a
for i in range(10):
fuc()
print ‘hello’
print a[0]
结果同上
列表也可以比较简单的实现这一功能