我有一个包含多个模块的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
有更好的方法吗?