zoukankan      html  css  js  c++  java
  • Python实现全局变量的两个解决方法

    Python实现全局变量的两个解决方法

    本文针对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]
    结果同上
    列表也可以比较简单的实现这一功能

  • 相关阅读:
    C++11 学习总结
    平衡二叉树 (AVL) 笔记
    拼图模板
    2013.9.12
    2013.9.11
    2013.9.10
    2013.9.9
    下载网站
    ubuntu 安装codeblocks
    12个球称3次找坏球的完美解答
  • 原文地址:https://www.cnblogs.com/amengduo/p/9586718.html
Copyright © 2011-2022 走看看