python通过配置文件共享全局变量的实例


Posted in Python onJanuary 11, 2019

在使用Python编写的应用的过程中,有时会遇到多个文件之间传递同一个全局变量的情况,此时通过配置文件定义全局变量是一个比较好的选择。

首先配置config.py模块,config需要设置get_xxx和set_xxx的方法提供对外的接口。

config.py

class global_var:
  '''需要定义全局变量的放在这里,最好定义一个初始值'''
  name = 'my_name'

# 对于每个全局变量,都需要定义get_value和set_value接口
def set_name(name):
  global_var.name = name
def get_name():
  return global_var.name

然后在其他模块引用:

test.py

import config
# 引用全局变量
name = config.get_name()
# 修改全局变量
config.set_name('new_name')
# 查看修改后的全局变量
print(config.get_name())

注意:

1. import配置文件时,不要from xxx import *, 而要import config.py

2. 在config.py文件中,用set_xxxValue()和get_xxxValue来提供外部访问接口,这个好处是,可以让全局变量在每次调用的时候都能得到刷新

3. 其他文件使用get_xxxValue()获取到全局变量的最新值

另外,对于global这个声明,他只是在同一个文件中有效,并不能跨文件,就是夸module.所以不要妄想通过global来控制不同文件间的共享变量。

以上这篇python通过配置文件共享全局变量的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python shell根据ip获取主机名代码示例
Nov 25 Python
Python即时网络爬虫项目启动说明详解
Feb 23 Python
python统计多维数组的行数和列数实例
Jun 23 Python
在Python 字典中一键对应多个值的实例
Feb 03 Python
利用python脚本如何简化jar操作命令
Feb 24 Python
python增加图像对比度的方法
Jul 12 Python
Python彻底删除文件夹及其子文件方式
Dec 23 Python
Python Tensor FLow简单使用方法实例详解
Jan 14 Python
Python 剪绳子的多种思路实现(动态规划和贪心)
Feb 24 Python
python使用openpyxl操作excel的方法步骤
May 28 Python
python 实现"神经衰弱"翻牌游戏
Nov 09 Python
如何通过安装HomeBrew来安装Python3
Dec 23 Python
Python设计模式之命令模式原理与用法实例分析
Jan 11 #Python
Python设计模式之职责链模式原理与用法实例分析
Jan 11 #Python
对Python中实现两个数的值交换的集中方法详解
Jan 11 #Python
对Python模块导入时全局变量__all__的作用详解
Jan 11 #Python
Python实现批量执行同目录下的py文件方法
Jan 11 #Python
python多个模块py文件的数据共享实例
Jan 11 #Python
Python设计模式之享元模式原理与用法实例分析
Jan 11 #Python
You might like
php判断输入不超过mysql的varchar字段的长度范围
2011/06/24 PHP
PHP版国家代码、缩写查询函数代码
2011/08/14 PHP
PHP数组与对象之间使用递归实现转换的方法
2015/06/24 PHP
linux下php上传文件注意事项
2016/06/11 PHP
PHP判断JSON对象是否存在的方法(推荐)
2016/07/06 PHP
PHP如何将图片文件上传到另外一台服务器上
2019/08/26 PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
2020/02/15 PHP
宝塔面板在NGINX环境中TP5.1如何运行?
2021/03/09 PHP
Cookie 小记
2010/04/01 Javascript
Jquery带搜索框的下拉菜单
2013/05/06 Javascript
javascript实现的HashMap类代码
2014/06/27 Javascript
javascript实现控制文字大中小显示
2015/04/28 Javascript
三分钟带你玩转jQuery.noConflict()
2016/02/15 Javascript
JS基于ocanvas插件实现的简单画板效果代码(附demo源码下载)
2016/04/05 Javascript
谈谈jQuery之Deferred源码剖析
2016/12/19 Javascript
jQuery分页插件jquery.pagination.js使用方法解析
2017/02/09 Javascript
你不知道的Vue技巧之--开发一个可以通过方法调用的组件(推荐)
2019/04/15 Javascript
了解JavaScript函数中的默认参数
2019/05/30 Javascript
详解 javascript对象创建模式
2020/10/30 Javascript
[03:24]CDEC.Y赛前采访 努力备战2016国际邀请赛中国区预选赛
2016/06/25 DOTA
[50:11]2018DOTA2亚洲邀请赛 4.7总决赛 LGD vs Mineski 第三场
2018/04/09 DOTA
python爬虫使用cookie登录详解
2017/12/27 Python
django从请求到响应的过程深入讲解
2018/08/01 Python
python3.6+django2.0+mysql搭建网站过程详解
2019/07/24 Python
PyCharm更改字体和界面样式的方法步骤
2019/09/27 Python
怎么快速自学python
2020/06/22 Python
基于Python实现全自动下载抖音视频
2020/11/06 Python
世界上最大的在线旅行社新加坡网站:Expedia新加坡
2016/08/25 全球购物
意大利制造的男鞋和女鞋:SCAROSSO
2018/03/07 全球购物
香蕉共和国工厂店:Banana Republic Factory
2018/06/09 全球购物
应聘文员自荐信范文
2014/03/11 职场文书
陈欧广告词
2014/03/14 职场文书
《数星星的孩子》教学反思
2014/04/11 职场文书
党支部党的群众路线对照检查材料
2014/09/24 职场文书
2015年医药代表工作总结
2015/04/25 职场文书
Python基础知识学习之类的继承
2021/05/31 Python