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的dict,set,list,tuple应用详解
Jul 24 Python
python使用三角迭代计算圆周率PI的方法
Mar 20 Python
python中Flask框架简单入门实例
Mar 21 Python
Python实现处理管道的方法
Jun 04 Python
在Python的Django框架中编写编译函数
Jul 20 Python
详解Python发送email的三种方式
Oct 18 Python
对python中list的拷贝与numpy的array的拷贝详解
Jan 29 Python
Python把对应格式的csv文件转换成字典类型存储脚本的方法
Feb 12 Python
对于Python深浅拷贝的理解
Jul 29 Python
pytorch实现特殊的Module--Sqeuential三种写法
Jan 15 Python
python suds访问webservice服务实现
Jun 26 Python
ubuntu安装jupyter并设置远程访问的实现
Mar 31 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
咖啡店都有些什么常规豆子呢?有什么风味在里面
2021/03/04 咖啡文化
php xml文件操作实现代码(二)
2009/03/20 PHP
PHP里的中文变量说明
2011/07/23 PHP
php猴子选大王问题解决方法
2015/05/12 PHP
php实现中文转数字
2016/02/18 PHP
PHP实现的XXTEA加密解密算法示例
2018/08/28 PHP
PHP实现微信小程序用户授权的工具类示例
2019/03/05 PHP
TP - 比RBAC更好的权限认证方式(Auth类认证)
2021/03/09 PHP
Jquery.addClass始终无效原因分析
2013/09/08 Javascript
javascript和jquery修改a标签的href属性
2013/12/16 Javascript
jquery easyui combox一些实用的小方法
2013/12/25 Javascript
JavaScript实现给按钮加上双重动作的方法
2015/08/14 Javascript
js正则表达式验证邮件地址
2015/11/12 Javascript
JS实现控制文本框的内容
2016/07/10 Javascript
javascript实现无法关闭的弹框
2016/11/27 Javascript
详解jQuery中基本的动画方法
2016/12/14 Javascript
jQuery Datatable 多个查询条件自定义提交事件(推荐)
2017/08/24 jQuery
JavaScript比较同一天的时间大小实例代码
2018/02/09 Javascript
基于Vue渲染与插件的加载顺序的问题详解
2018/03/05 Javascript
jQuery使用each遍历循环的方法
2018/09/19 jQuery
JS代码简洁方式之函数方法详解
2020/07/28 Javascript
node.js通过Sequelize 连接MySQL的方法
2020/12/28 Javascript
简单介绍Python2.x版本中的cmp()方法的使用
2015/05/20 Python
python制作最美应用的爬虫
2015/10/28 Python
Python读取文件内容的三种常用方式及效率比较
2017/10/07 Python
Django如何开发简单的查询接口详解
2019/05/17 Python
Python3爬虫里关于识别微博宫格验证码的知识点详解
2020/07/30 Python
实例讲解CSS3中Transform的perspective属性的用法
2016/04/22 HTML / CSS
CSS3中Animation动画属性用法详解
2016/07/04 HTML / CSS
西班牙鞋子和箱包在线销售网站:zapatos.es
2020/02/17 全球购物
Currentbody法国:健康与美容高科技产品
2020/08/16 全球购物
ktv周年庆活动方案
2014/08/18 职场文书
《改造我们的学习》心得体会
2014/11/07 职场文书
2014年团支部年度工作总结
2014/12/24 职场文书
MySQL系列之六 用户与授权
2021/07/02 MySQL
Android存储中最基本的文件存储方式
2022/04/30 Java/Android