最近几天我学了一点Python。现在我尝试使用 PyQT 制作一个 GUI,并且我想使用第二个名为 untitled2.txt 的文件中的函数编写程序。该文件中有一个函数,用于检查文本编辑中是否插入了不同的数字。当我在主文件中插入这个函数时,这个程序就可以工作。但是当我将其放入第二个文件(untitled2)并插入该文件时,该程序不再工作。完全不知道为什么......
这是没有 GUI 程序代码的小示例。
主文件:
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.uic import *
from PyQt5.QtWidgets import QApplication, QMainWindow
from untitled1 import *
app = QApplication(sys.argv)
w = loadUi('testprogramgui.ui')
w.Button_button_1.clicked.connect(check)
w.show()
sys.exit(app.exec_())
这是带有以下功能的文件 untitled2:
def check():
try:
insert= w.insertValue1.text()
insert2= float(insert)
#check to control
print(insert2, type(insert2))
except:
print("no number")
也许有人知道如何解决这个问题?我认为你不需要 gui 文件,所以我没有在这里写它。
提前非常感谢。
最佳答案
每个模块必须独立于另一个模块,每个功能也必须独立,因此在您的情况下,“检查”功能不应考虑文本中信息的来源,因此我们使用“检查”功能接收信息:
# ...
app = QApplication(sys.argv)
w = loadUi('testprogramgui.ui')
def on_clicked():
check(w.insertValue1.text())
w.Button_button_1.clicked.connect(on_clicked)
w.show()
sys.exit(app.exec_())
def check(insert):
try:
insert2= float(insert)
#check to control
print(insert2, type(insert2))
except:
print("no number")
关于Python-分离文件中的函数不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60042001/