Python-各py模块之间信息传递方法的记录:(使用于Pyqt5和日常程序之间的信息传递使用)

目的:
日常程序之间分为各个py模块,一些程序可以直接调用后return相关信息,一些程序则不能,这样的情况下,需要建立一个信息传值的方法,能运用在各py模块之间。
(比如不同Pyqt5之间的UI界面信息传递,备注:也可以用QT线程中的信号机制pyqtSignal完成信息传值,该方法后续记录。)
1、首先,是创建一个消息基类,用于保存数据名称及获取数据名称对应值数值。
(1)文件名为:globalvar.py

'''创建消息基类,保存属性及获取属性值的方法'''
class GlobalVar:
    def __init__():
        global _global_dict
        _global_dict = {}
    
    def set_mq_client(name,value):  #设置保存的数据
        _global_dict[name] = value

    def get_mq_client(name):        #提取保存的数据
        try:
            return _global_dict[name]
        except KeyError:
            return False

如上面的代码块意思:其实就是创建一个类,在初始化方法中,申明一个全局变量: _global_dict,_global_dict是一个字典。
建立两个函数,也都是运用字典的功能,进而来设置保存的数据和提取保存的数据。(字典功能数据的设置及提取,应该看得懂)
2、下一步:则是额外创建一个功能调用的模块:(此模块也可不创建,主要看个人。)
(2)文件名为:set_and_get.py,表示设置和提取数据。

from globalvar import GlobalVar
'''此处可以添加其他的方法'''

def set(name,value):
    GlobalVar.set_mq_client(name,value)
   
def get(name):
    print("获取数据:"+ str(GlobalVar.get_mq_client(name)))

3、创建一个设置数据名称的模块,然后我们在主程序中读取该数据名称对应的数值:
(3)文件名:set.py

import set_and_get

def sets():
    set_and_get.set("run","正在跑")
    set_and_get.set("ret","很好")

4、在主程序中读取另一个模块的设置的数值:
(4)文件名:main.py

import set_and_get
from globalvar import *
import set 

#作用在当前模块中初始化GlobalVar模块中的变量,这样才能使 _global_dict = {}在当前模块中正常设置及提取对应数值
GlobalVar.__init__()  #初始化属性

#另一个模块中设置数据名称对用的数值。
set.sets()

set_and_get.get("ret")
set_and_get.get("run")
#输出如下:
#获取数据:很好
#获取数据:正在跑
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

山中坐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值