Python将句柄传递给多个模块的接口

2024-06-17 12:15:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个包含多个模块的python程序。有一个模块,其中包含初始化UDP接口以发送消息的代码。我想这个接口将用于所有模块。我想到的唯一方法是通过预定义函数将对象传递给其他模块。你知道吗

主模块:

from mod1 import *
from mod2 import *
from Interfaces import *

class MainClass():
    def __init__(self):

        # Initialize Modules
        self.m1 = Module1()
        self.m2 = Module2()

        self.intf = UdpInterface()
        self._init_module_interfaces()

    def _init_module_interfaces(self):
        self.m1.InitIntf(self.intf)
        self.m2.InitIntf(self.intf)

if __name__ == '__main__':
    main = MainClass()

子模块:

class Module1():
    def __init__(self):
        ...

    def InitIntf(self, intf):
        self.intf = intf

有没有更好的办法?你知道吗


Tags: 模块fromimportselfinitdefinterfacesclass