python全局变量 | 跨文件模块使用的一种实现方法
使用一个模块来专门管理全局变量,其他模块再通过导入该模块来间接对全局变量进行操作。
为了避免造成全局变量的赋值混乱,对于每一个全局变量,可以有多个模块读取该全局变量,但尽量只有一个模块用来对其进行赋值操作(根据要实现的代码的具体情况而定),且要注意读和写的顺序关系,也要注意读和读之间的顺序关系,避免出现错误。
示例如下:
#文件名为 c.py,用来管理全局变量
def init_val():global dict_valdict_val = {'a' : None, 'b' : False, 'c' : None}def set_value(key, value):# global dict_valdict_val[key] = valuedef get_value(key):# global dict_valreturn dict_val[key]
#文件名为 b.py,用来对全局变量进行赋值
import cdef set():c.set_value('a', 23)
#主程序 a.py
(注意顺序,先初始化全局变量,再进行写和读的操作。)
import c
import bc.init_val()b.set()a_value = c.get_value('a')
print(a_value)
运行a.py,结果如下。
23
[Finished in 0.5s]
python全局变量 | 跨文件模块使用的一种实现方法相关推荐
- common-io-2.0的新功能之文件监控FileAlteration(文件监听的两种实现方法《很全的监听文件例子》)...
common-io-2.0的新功能之文件监控FileAlteration(文件监听的两种实现方法<很全的监听文件例子>) 转载于:https://www.cnblogs.com/rocky ...
- 计算机不能再U盘新建文件夹,U盘无法建立新的文件夹?!三种小方法教你解决...
原标题:U盘无法建立新的文件夹?!三种小方法教你解决 U盘是现代人常用的移动存储设备之一,特点是小巧易携带,容量大,因此深得用户喜欢.但是这小小的U盘一旦出现故障,就让人有点难以招架了,U盘不比电脑, ...
- Python设置跨文件的全局变量
先说明,此篇只是整理前人的方法 网上一搜索,排名前几的大都是一个方法,大同小异,连出现的问题都一样,让人联想..... 但直接使用时要么有问题,要么写的不适合新手学习 我总结了一下: 1.建立一个名字 ...
- Python全局变量跨模块变量定义和使用
在同一个py脚本中,定义在所有函数之外的变量可以理解为全局变量,因为所有函数可以直接访问函数外的变量(但不能访问其他函数的私有变量),这里涉及到变量的作用域,一般分为函数作用域和全局作用域,函数作用域 ...
- 语言全局变量跨文件_C 语言课上不会讲的一些问题
基础认识:程序在内存中的基本结构 在大多数操作系统中,一个程序加载到内存后会被分配一个虚拟的内存地址,范围从0到一个非常大的不确定值.这个虚拟内存对应的物理内存映射是操作系统管理的,多数情况它在主存( ...
- python 文件流转base64_详解Python中使用base64模块来处理base64编码的方法
base64模块是用来作base64编码解码的.这种编码方式在电子邮件中是很常见的. 它可以把不能作为文本显示的二进制数据编码为可显示的文本信息.编码后的文本大小会增大1/3. 闲话不说了,base6 ...
- 怎么用python读取csv文件、并且是读取行-python读取csv文件指定行的2种方法详解...
csv是Comma-Separated Values的缩写,是用文本文件形式储存的表格数据,比如如下的表格 就可以存储为csv文件,文件内容是: No.,Name,Age,Score 1,Apple, ...
- python读取csv文件的方法-python读取csv文件指定行的2种方法详解
csv是Comma-Separated Values的缩写,是用文本文件形式储存的表格数据,比如如下的表格 就可以存储为csv文件,文件内容是: No.,Name,Age,Score 1,Apple, ...
- python中判断文件是否存在的三种方式_Python中判断文件是否存在的方法
Python中判断文件是否存在的方法 发布时间:2020-08-06 11:15:42 来源:亿速云 阅读:58 作者:小新 这篇文章主要介绍Python中判断文件是否存在的方法,文中介绍的非常详细, ...
最新文章
- 胶囊网络(Capsule Network)在文本分类中的探索
- 约瑟夫环问题(vector模拟过程)
- async 和 await 之异步编程的学习
- ResNet原理和实现
- base——JRE和JDK的区别【转】
- SQL Server 2014新特性:其他
- Mac桌面上找不到或无法显示USB问题
- 约瑟夫环问题 poj 1012 poj 2244
- 用C#制作PDF文件全攻略
- 实现简单的emoji发送功能
- msdn下载的系统怎么安装
- 超级鹰平台识别boss验证码
- asp.net母版页学习总结
- HRESULT: 0x80070057 (E_INVALIDARG) 的处理
- 插了T管引流,该注意点啥
- 小而美的ToDo 待办事项便签工具,高效管理工作生活一切琐事
- MOGRT替换视频,图像,照片及LOGO?如何替换PR动态图形模板中的图片视频素材
- 美国商务签证面试经历
- 新态势感知系列(1):从态势感知到全方位态势感知
- 什么叫html格式化,format是什么意思 格式化自己,只为删除你???
热门文章
- 【短视频运营】账号主页搭建 ① ( 昵称 | 昵称原则 | 昵称公式 | 昵称禁忌 | 个人简介 | 个人简介公式 )
- 开机黑屏显示html,电脑开机黑屏怎么办,教您电脑开机黑屏的解决方法
- java诊断工具-Arthas(阿尔赛斯)入门
- 如何同时操作三台服务器
- 过敏性鼻炎之减敏疗法
- 《大话设计模式》java实现之责任链模式
- Halcon图像处理软件下载
- 利用循环链表实现拉丁方阵问题
- c4dR19材质编辑器语言中文,C4D R19小白成长记(入门篇) 零基础学习Cinema 4d R19中文教程...
- rs.open sql,conn,1,3中的1,3是什么意思