您的位置:首页 > 编程语言 > Python开发

python实现全局变量

2017-11-02 10:57 357 查看
目标:全局变量

先看程序:

count = 0
def Fuc(count):
print count
count += 1

for i in range(0, 10):
Fuc(count)


结果是:


不是我们想要的结果。不可变对象count传值,本身并没有改变,在函数内部修改count的值,只是修改一个赋值的对象。

解决之道一——全局变量:

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


结果:

           


注意要领:

  哪里需要全局变量,哪里声明一下;但是函数千万不要传参数, Fuc(a)是不行的。

解决之道二——列表:

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]


结果同上
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python 全局变量