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的Django框架中编写编译函数
Jul 20 Python
深入解析Python中的变量和赋值运算符
Oct 12 Python
python实现class对象转换成json/字典的方法
Mar 11 Python
Python探索之修改Python搜索路径
Oct 25 Python
python 读取文本文件的行数据,文件.splitlines()的方法
Jul 12 Python
基于随机梯度下降的矩阵分解推荐算法(python)
Aug 31 Python
解决django前后端分离csrf验证的问题
Feb 03 Python
Python将列表中的元素转化为数字并排序的示例
Dec 25 Python
详解python中的闭包
Sep 07 Python
在pyCharm中下载第三方库的方法
Apr 18 Python
pytorch 实现多个Dataloader同时训练
May 29 Python
Python中的套接字编程是什么?
Jun 21 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中的类-什么叫类
2006/11/20 PHP
使用VisualStudio开发php的图文设置方法
2010/08/21 PHP
不重新编译PHP为php增加openssl模块的方法
2011/06/14 PHP
DISCUZ在win2003环境下 Unable to access ./include/common.inc.php in... 的问题终极解决方案
2011/11/21 PHP
php中将html中的br换行符转换为文本输入中的换行符
2013/03/26 PHP
深入理解PHP中的global
2014/08/19 PHP
使用PHP实现生成HTML静态页面
2015/11/18 PHP
yum命令安装php7和相关扩展
2016/07/04 PHP
关于 Laravel Redis 多个进程同时取队列问题详解
2017/12/25 PHP
jquery 指南/入门基础
2007/11/30 Javascript
Javascript 实用小技巧
2010/04/07 Javascript
关于js获取radio和select的属性并控制的代码
2011/05/12 Javascript
JavaScript之引用类型介绍
2012/08/10 Javascript
关于延迟加载JavaScript
2015/05/05 Javascript
js图片跟随鼠标移动代码
2015/11/26 Javascript
快速搭建Node.js(Express)用户注册、登录以及授权的方法
2019/05/09 Javascript
七行JSON代码把你的网站变成移动应用过程详解
2019/07/09 Javascript
[49:27]2018DOTA2亚洲邀请赛 4.4 淘汰赛 TNC vs VG 第一场
2018/04/05 DOTA
[45:32]Liquid vs LGD 2018国际邀请赛淘汰赛BO3 第二场 8.23
2018/08/24 DOTA
[55:44]完美世界DOTA2联赛决赛 FTD vs Phoenix 第二场 11.08
2020/11/11 DOTA
基于Python os模块常用命令介绍
2017/11/03 Python
详解django三种文件下载方式
2018/04/06 Python
使用urllib库的urlretrieve()方法下载网络文件到本地的方法
2018/12/19 Python
Django 通过JS实现ajax过程详解
2019/07/30 Python
Python判断字符串是否xx开始或结尾的示例
2019/08/08 Python
python剪切视频与合并视频的实现
2020/03/03 Python
Python实现疫情通定时自动填写功能(附代码)
2020/05/27 Python
浅谈matplotlib 绘制梯度下降求解过程
2020/07/12 Python
Python更改pip镜像源的方法示例
2020/12/01 Python
css3和jquery实现的可折叠导航菜单适合放在手机网页的导航菜单
2014/09/02 HTML / CSS
bonprix匈牙利:女士、男士和儿童服装
2019/07/19 全球购物
美国精品地毯网站:Boutique Rugs
2020/03/04 全球购物
2014年工会工作总结
2014/11/12 职场文书
不服劳动仲裁起诉书
2015/05/20 职场文书
2017公司年会主持人开幕词
2016/03/04 职场文书
如何在pycharm中快捷安装pip命令(如pygame)
2021/05/31 Python