要在Qt中調用Python程序,可以使用QProcess類。以下是一個簡單的示例代碼:
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton
from PyQt5.QtCore import QProcess
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.button = QPushButton("調用Python程序", self)
self.button.setGeometry(100, 100, 200, 50)
self.button.clicked.connect(self.callPythonProgram)
def callPythonProgram(self):
pythonProcess = QProcess()
pythonProcess.start("python", ["path_to_your_python_script.py"])
pythonProcess.waitForFinished()
output = pythonProcess.readAllStandardOutput()
print(output.data().decode())
if __name__ == '__main__':
app = QApplication(sys.argv)
mainWindow = MainWindow()
mainWindow.show()
sys.exit(app.exec_())
在上述代碼中,我們通過創建一個QPushButton來觸發調用Python程序的操作。在callPythonProgram
函數中,我們創建一個QProcess對象,并使用start
方法來啟動Python程序,其中第一個參數是Python解釋器的路徑,第二個參數是要執行的Python腳本的路徑。然后,我們使用waitForFinished
方法等待Python程序的執行完成,并使用readAllStandardOutput
方法讀取標準輸出。最后,我們將輸出打印到控制臺。
請確保已經安裝了PyQt5庫,并將path_to_your_python_script.py
替換為您實際的Python腳本路徑。運行這個Qt應用程序后,單擊按鈕將調用Python程序,并將輸出打印到控制臺。