Python实现全局变量的两个解决方法
更新时间:2014年07月03日 15:20:30 投稿:shichen2014
这篇文章主要介绍了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]
结果同上
列表也可以比较简单的实现这一功能
相关文章
python中的break、continue、exit()、pass全面解析
下面小编就为大家带来一篇python中的break、continue、exit()、pass全面解析。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧2017-08-08python错误:AttributeError: ''module'' object has no attribute
这篇文章主要介绍了python错误:AttributeError: 'module' object has no attribute 'setdefaultencoding'问题的解决方法,需要的朋友可以参考下2014-08-08
最新评论