Python 中的 global 关键字的用法以及如何设置项目级的 Global 变量
Python中的global关键字的用法
global的英文相比你肯定知道,全球的,总的。那么正Python编程语言中,结合global的中文意思你会更加的理解这个关键字的用法。我们使用global关键字可以定义Global的变量。
global 关键字能什么呢
global关键字可以定义一个变量,被定义的变量可以在变量作用域之外被修改,通俗讲就是一个全局的变量,这个全局的变量在其被定义后,可以在全部上文中修改和使用。但是,global也是随便被使用的,它也有一些自己的规则,当我们在函数内部创建一个变量的时候,如果我们想让他变成一个全局变量,我们需要使用关键字global定义它,但是如果我们在函数外面定义的变量默认就是global的变量,不用在使用global关键字定义。
如何使用global
首先我先尝试一下如下代码,我们实现默认移动5步的这样一个函数:
运行后,控制台输出如下:
0
Process finished with exit code 0
那么我刚刚说了,这个函数是我想像往前移动5步,那么这么一想,我就做了如下修改:
运行后,控制台输出却变成了如下:
上面的错误是因为对于在函数外面定义的global的变量,在函数内部只能完成对其访问,不能对其修改,因此会出现上述报告,如果你想在函数对一个global的变量进行修改,那么需要显著的声明global变量,作如下修改:
运行结果如下:
5
5
Process finished with exit code 0
可以看出,第一个5是在movenext函数中打印出来的,第二个5是在main函数中打印出来的,但是都是打印了cur这个变量。我们在movenext函数中完成了cur的修改,但是我们在movenext函数中或者函数外打印cur都是一样的结果,说明在函数中修改的cur就是全局的cur这个变量。
从上面的内容中我们可以看到Global是在一个py文件内部约束全局变量的关键字,在同一个项目中我们是如何约束一个项目的全局变量的呢?
借助Global的思路,建立一个全局变量管理的机制,这样就可以提供项目级的全局变量了新建global_manager.py
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:http://blog.csdn.net/crisschan
版权声明: 本文为 InfoQ 作者【陈磊@Criss】的原创文章。
原文链接:【http://xie.infoq.cn/article/97ba28c123f6de71d79e8d630】。未经作者许可,禁止转载。
评论