在使用Python编写的应用的过程中,有时会遇到多个文件之间传递同一个全局变量的情况。

文件1:globalvar.py

#!/usr/bin/env python2.7
class GlobalVar:
db_handle = None
mq_client = None
def set_db_handle(db):
GlobalVar.db_handle = db
def get_db_handle():
return GlobalVar.db_handle
def set_mq_client(mq_cli):
GlobalVar.mq_client = mq_cli
def get_mq_client():
return GlobalVar.mq_client

文件2:set.py

import globalvar as GlobalVar
def set():
GlobalVar.set_mq_client(10)
print "------set mq_client in set.py------mq_client: " + str(GlobalVar.get_mq_client())

文件3:get.py

#!/usr/bin/env python2.7
import globalvar as GlobalVar
def get():
print "------get mq_client in get.py------mq_client: " + str(GlobalVar.get_mq_client())
文件4:main.py#!/usr/bin/env python2.7
import set
import get
set.set()
get.get()

其中globalvar.py中定义了两个全局变量,在set.py中的set函数中对其进行赋值,在get.py文件中的get函数取值并打印。main.py函数作为应用入口,调用set和get。

这样就可以看到一个完整的应用中,全局变量的跨文件使用。

python2.7 跨文件全局变量的方法相关推荐

  1. Python跨文件全局变量的方法

    Python实现跨文件跨线程全局变量的方法 参考:https://www.cnblogs.com/rnckty/p/7722603.html 跨文件全局变量不能跨进程,进程之间是隔绝的,必须用进程间通 ...

  2. Python实现跨文件全局变量的方法

    Python 中 global 关键字可以定义一个变量为全局变量,但是这个仅限于在一个模块(py文件)中调用全局变量,在另外一个py文件 再次使用 global x 也是无法访问到的,因为在这个py模 ...

  3. python跨文件全局变量_Python跨文件全局变量的实现方法示例

    前言 在C语言中,由于变量一定是先声明,后使用,所以我们可以清楚的知道,现在使用的变量是全局还是局部,比如: int a = 5; void test(void) { a = 1; // 没有先声明, ...

  4. Python跨文件全局变量的使用技巧

    特别鸣谢以下更多python教程请到友情连接: 菜鸟教程https://www.piaodoo.com 初中毕业读什么技校 http://cntkd.net 茂名一技http://www.enechn ...

  5. python跨文件全局变量_Python 进程之间共享数据(全局变量)的方法

    进程之间共享数据(数值型): import multiprocessing def func(num): num.value=10.78 #子进程改变数值的值,主进程跟着改变 if __name__= ...

  6. python跨文件全局变量_Python跨文件全局变量的使用

    尽管某些书籍上总是说避免使用全局变量,但是在实际的需求不断变化中,往往定义一个全局变量是最可靠的方法,但是又必须要避免变量名覆盖. Python 中 global 关键字可以定义一个变量为全局变量,但 ...

  7. Python跨文件全局变量

    尽管某些书籍上总是说避免使用全局变量,但是在实际的需求不断变化中,往往定义一个全局变量是最可靠的方法,但是又必须要避免变量名覆盖. Python 中 global 关键字可以定义一个变量为全局变量,但 ...

  8. Python设置跨文件的全局变量

    先说明,此篇只是整理前人的方法 网上一搜索,排名前几的大都是一个方法,大同小异,连出现的问题都一样,让人联想..... 但直接使用时要么有问题,要么写的不适合新手学习 我总结了一下: 1.建立一个名字 ...

  9. 语言全局变量跨文件_C 语言课上不会讲的一些问题

    基础认识:程序在内存中的基本结构 在大多数操作系统中,一个程序加载到内存后会被分配一个虚拟的内存地址,范围从0到一个非常大的不确定值.这个虚拟内存对应的物理内存映射是操作系统管理的,多数情况它在主存( ...

最新文章

  1. C语言函数集(二十一)
  2. react跳转url,跳转外链,新页面打开页面
  3. mysql 日期循环_如何在mysql存储过程中循环日期时间
  4. python安装requests库提示更新_解决已经安装requests,却依然提示No module named requests问题...
  5. osi七层模型 与Linux的一些常用命令和权限管理 继承上篇
  6. 计算机房消防设计规范,发电机房消防设计规范要求有哪些
  7. IT服务管理的实施过程
  8. zuc算法代码详解_密码学算法之序列密码中的ZUC算法详解
  9. w10投影全屏设置_win10投影仪怎么铺满全屏|win10投影器全屏的设置方法
  10. 最全公司章程自由规定事项
  11. 聚类及DBSCAN 聚类算法
  12. 简单的学生成绩数据分析案例
  13. 【免费领取】石杉架构班Kafka消息中间件内核源码课程
  14. 2021年创新医疗器械盘点
  15. 政府大数据服务,跑马圈地正当时
  16. python中的and_PYTHON中的“and”是什么意思
  17. 关于“基于模型的思想”的一些引述和评论
  18. 5-(4-羟基苯基)-10,15,20-三-(4-溴苯基)卟啉(TPP-Brs)/2-羟甲基-5,10,15,20-四苯基卟啉/2-氯甲基5,10,15,20-四苯基卟啉齐岳供应
  19. 为什么大多公司不要培训班培训出来的JAVA程序员?求职必看
  20. 宝宝树发行价为6.8港元 王怀南:上市不是为高估值

热门文章

  1. kotlin 学习笔记(1)
  2. android6.0的坑
  3. 我和我的广告前端代码(六):webpack工程合并、也许我不需要gulp
  4. 2015 11月30日 一周工作计划与执行
  5. SQL_Server_2008完全学习之第八章Transact-SQL编程
  6. js中的showModalDialog的实战应用
  7. html将边框向下移的代码,设置margin-left实现div右移
  8. Java黑皮书课后题第8章:*8.5(代数:两个矩阵相加)编写两个矩阵相加的方法,编写一个测试程序,提示用户输入两个3*3的矩阵,然后显示它们的和
  9. STL源码剖析---红黑树原理详解下
  10. Java多线程-线程状态