python实现跨文件全局变量的方法

yipeiwu_com6年前Python基础

在使用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。

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

相关文章

pandas的相关系数与协方差实例

1、输出百分比变化以及前后指定的行数 a = np.arange(1,13).reshape(6,2) data = DataFrame(a) #计算列的百分比变化,如果...

使用XML库的方式,实现RPC通信的方法(推荐)

使用XML库的方式,实现RPC通信的方法(推荐)

1、先说结论:使用xml-rpc的机制可以很方便的实现服务器间的RPC调用。 2、试验结果如下: 3、源码如下: 服务器端的源代码如下: import operator, math...

Python彩色化Linux的命令行终端界面的代码实例分享

Python彩色化Linux的命令行终端界面的代码实例分享

先看看效果: 在linux的终端中,ANSI转义序列来控制颜色 基本规则: 前面加上\033[,结尾用\033[0m重置为原来的颜色 可以在终端中输入下面这句,就可以看到输出绿色的h...

Python基础学习之常见的内建函数整理

 前言 Python针对众多的类型,提供了众多的内建函数来处理,这些内建函数功用在于其往往可对多种类型对象进行类似的操作,即多种类型对象的共有的操作,下面话不多说了,来一看看详...

Python中使用item()方法遍历字典的例子

Python中使用item()方法遍历字典的例子

Python字典的遍历方法有好几种,其中一种是for...in,这个我就不说明,在Python了几乎随处都可见for...in。下面说的这种遍历方式是item()方法。 item() i...