python实现 全局变量的两种解决办法

目标:全局变量

先看程序:

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

for i in range(0, 10):
    Fuc(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]

结果同上

     列表可以比肩简单的实现,学习之。

 

posted @ 2013-01-05 20:09  jihite  阅读(108111)  评论(0编辑  收藏  举报