Python全局变量操作详解


Posted in Python onApril 14, 2015

接触Python时间不长,对有些知识点,掌握的不是很扎实,我个人比较崇尚不管学习什么东西,首先一定回去把基础打的非常扎实了,再往高处走。今天遇到了Python中的全局变量的相关操作,遇到了问题,所以,在这里将自己遇到的问题,做个记录,以长记心!!!

在Python中使用全局变量,其实,个人认为并不是很明智的选择;但是自己还是坚信,存在便合理,在于你怎么使用;全局变量降低了模块和函数之间的通用性;所以,在以后的编程过程中,应尽量避免使用全局变量。

全局变量的使用:

方法一:

为了便于代码管理,将全局变量统一放到一个模块中,然后在使用全局变量的时候,导入全局变量模块,通过这种方法来进行使用全局变量;
在一个模块中定义全局变量:

#global.py  

GLOBAL_1 = 1  

GLOBAL_2 = 2  

GLOBAL_3 = 'Hello World' 

然后在一个模块中导入全局变量定义模块,在新模块中使用全局变量:
import globalValues  

  

def printGlobal():  

    print(globalValues.GLOBAL_1)  

    print(globalValues.GLOBAL_3)  

    globalValues.GLOBAL_2 += 1 # modify values  

  

if __name__ == '__main__':  

    printGlobal()  

    print(globalValues.GLOBAL_2) 

方法二:

直接在模块中定义全局变量,然后在函数中直接使用就ok了。但是在使用全局变量的时候,必须在函数中使用global关键字进行标识:

CONSTANT = 0  

  

def modifyGlobal():  

    global CONSTANT  

    print(CONSTANT)  

    CONSTANT += 1  

  

if __name__ == '__main__':  

    modifyGlobal()  

    print(CONSTANT) 

讲解完毕!!!

Python 相关文章推荐
web.py中调用文件夹内模板的方法
Aug 26 Python
python实现根据图标提取分类应用程序实例
Sep 28 Python
python在windows下实现ping操作并接收返回信息的方法
Mar 20 Python
简单谈谈python中的Queue与多进程
Aug 25 Python
深入理解NumPy简明教程---数组2
Dec 17 Python
python 创建一个空dataframe 然后添加行数据的实例
Jun 07 Python
python实现将文件夹下面的不是以py文件结尾的文件都过滤掉的方法
Oct 21 Python
Django实现一对多表模型的跨表查询方法
Dec 18 Python
Python3.5以上版本lxml导入etree报错的解决方案
Jun 26 Python
使用Filter过滤python中的日志输出的实现方法
Jul 17 Python
python获取栅格点和面值的实现
Mar 10 Python
python装饰器代码深入讲解
Mar 01 Python
Python and、or以及and-or语法总结
Apr 14 #Python
Python线程的两种编程方式
Apr 14 #Python
Python中的测试模块unittest和doctest的使用教程
Apr 14 #Python
利用Python中的输入和输出功能进行读取和写入的教程
Apr 14 #Python
对于Python编程中一些重用与缩减的建议
Apr 14 #Python
归纳整理Python中的控制流语句的知识点
Apr 14 #Python
Python中为什么要用self探讨
Apr 14 #Python
You might like
一个更简单的无限级分类菜单代码
2007/01/16 PHP
thinkphp实现163、QQ邮箱收发邮件的方法
2015/12/18 PHP
对比PHP对MySQL的缓冲查询和无缓冲查询
2016/07/01 PHP
php 输入输出流详解及示例代码
2016/08/25 PHP
php实现微信模拟登陆、获取用户列表及群发消息功能示例
2017/06/28 PHP
JavaScript使用encodeURI()和decodeURI()获取字符串值的方法
2015/08/04 Javascript
两行代码轻松搞定JavaScript日期验证
2016/08/03 Javascript
自己封装的一个原生JS拖动方法(推荐)
2016/11/22 Javascript
angularjs实现上拉加载和下拉刷新数据功能
2017/06/12 Javascript
详解PHP后期静态绑定分析与应用
2018/03/21 Javascript
如何在js代码中消灭for循环实例详解
2018/07/29 Javascript
layui中使用jquery控制radio选中事件的示例代码
2018/08/15 jQuery
node 版本切换的实现
2020/02/02 Javascript
微信小程序后端无法保持session的原因及解决办法问题
2020/03/20 Javascript
[02:58]献给西雅图的情书_高清
2014/05/29 DOTA
从Python的源码来解析Python下的freeblock
2015/05/11 Python
对比Python中__getattr__和 __getattribute__获取属性的用法
2016/06/21 Python
Python实现Linux中的du命令
2017/06/12 Python
Python+PyQT5的子线程更新UI界面的实例
2019/06/14 Python
Python中判断子串存在的性能比较及分析总结
2019/06/23 Python
Jacobi迭代算法的Python实现详解
2019/06/29 Python
python 中pyqt5 树节点点击实现多窗口切换问题
2019/07/04 Python
pandas DataFrame创建方法的方式
2019/08/02 Python
python切片(获取一个子列表(数组))详解
2019/08/09 Python
python单元测试框架pytest的使用示例
2020/10/07 Python
CSS3中各种颜色属性的使用教程
2016/05/17 HTML / CSS
HTML5 Canvas实现烟花绽放特效
2016/03/02 HTML / CSS
英国手机零售商:Metrofone
2019/03/18 全球购物
初任培训自我鉴定
2013/10/07 职场文书
小学教师听课制度
2014/02/01 职场文书
2014年教师教学工作总结
2014/11/08 职场文书
婚宴新娘致辞
2015/07/28 职场文书
学生病假条范文
2015/08/17 职场文书
七年级作文之《我和我的祖国》观后感作文
2019/10/18 职场文书
python使用pygame创建精灵Sprite
2021/04/06 Python
pytest配置文件pytest.ini的详细使用
2021/04/17 Python