python变量的作用域

来源:互联网 发布:远景能源怎么样 知乎 编辑:程序博客网 时间:2024/05/27 00:24

关于python的作用域理解起来比较简单,最近做项目遇到了一个这样的问题,关于全局变量的关键词global该怎么用?

最开始以为只要是全局的变量在局部函数里使用就要在使用前声明,XX是全局的变量。

(注释的是输出结果)

a='a'c='c'def test():    global a    c    print a    print c    test()#a#c#c

但是这样运行后发现,test里的c指向的仍然是全局变量。

a='a'c='c'def test():    global a    c = 'd'    print a    print c test()#a#d#c


改成这样以后c就是局部变量了。所以,当你的全局变量只是做获取的操作,不用global声明也是可以直接用的。如果要做改变引用的操作,就的有关键字global了,不然c就变成局部变量,指向另一个地方了。

0 0
原创粉丝点击