【发布时间】:2021-04-13 20:04:20
【问题描述】:
我有一个 Pyqt5 表单,用户可以在其中输入数据。这些数据被发送到另一个模块,在那里被处理并返回以在表单中显示。
看起来很简单:
frm.py
import sys
from PyQt5.QtWidgets import *
import mdl
def fnc0(in_val):
mdl.fnc1(in_val)
def fnc2(rezult):
msg.setText(rezult)
app = QApplication(sys.argv)
window = QWidget()
layout = QVBoxLayout()
btn = QPushButton('button')
btn.clicked.connect(lambda: fnc0(5))
layout.addWidget(btn)
msg = QLabel('')
layout.addWidget(msg)
window.setLayout(layout)
window.show()
sys.exit(app.exec_())
mdl.py
import frm
def fnc1(in_val):
out_val = str(in_val*2)
frm.fnc2(out_val)
但是,在执行此操作时,我收到了使用循环模块的错误:
AttributeError: partially initialized module 'mdl' has no attribute 'fnc1' (most likely due to a circular import)
是否可以将表单发送到另一个模块的数据进行处理,然后将结果返回给表单?
【问题讨论】:
标签: python pyqt5 circular-dependency