你們好,我是辰哥~~~python
本文目標:打造一個window桌面應用:在線聊天對話機器人。後端
今天辰哥教你們作一個在線聊天對話機器人桌面應用,已經打包成exe可執行文件,讀者能夠直接拿來使用, 先上演示圖app
聊天客戶端桌面應用函數
設計Ui:Pyqt5工具
對話回答:圖靈機器人開發工具
打包EXE:Pyinstaller測試
本文經過界面設計、後端處理、效果演示、打包exe這四方面去進行講解。ui
打包好EXE下載地址:https://wwi.lanzoui.com/iCygNrp0c6furl
0一、界面設計
1.安裝pyqt5
1.安裝PyQt5工具.net
pip install PyQt5
2.安裝Qt Designer圖形界面開發工具
pip install PyQt5-tools
2.設計界面
在搜索框中搜索: Desginer
建立桌面應用
開始設計,其中左邊是控件、中間是設計結果、右邊控件屬性設置。
最終的設計結果以下:(辰哥的簡單設計)
保存爲ui的後綴,如:chenge.ui
3.ul界面轉爲python代碼
經過Desginer設計的保存的ul文件能夠直接轉爲python代碼,其命令以下:
pyuic5 -o chenge.py chenge.ui
預覽代碼
0二、、後端處理
1.啓動界面
提示:這個chenge.py文件是沒法執行運行,咱們須要新建一個主函數去調用chenge.py
辰哥這裏新建了一個py文件:main.py
編輯main.py
import sys import chenge # GUI文件的名稱,chenge.ui from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget if __name__ == '__main__': app = QApplication(sys.argv) MainWindow = QMainWindow() ui = chenge.Ui_MainWindow() ui.setupUi(MainWindow) MainWindow.show() sys.exit(app.exec_())
運行結果:
這時候的界面點擊和輸入是無反應,只能看不能用!下面開始進行編寫控件處理邏輯。
2.接入圖靈機器人
在main.py文件中新建一個chat函數方法:經過調用chat函數,傳入問題,返回解答
3.控件處理邏輯
綁定監聽事件
一、輸入框
二、展現框
三、按鈕(發送)
在chenge.py文件中
#綁定監聽事件 self.pushButton.clicked.connect(MainWindow.pushButton) QtCore.QMetaObject.connectSlotsByName(MainWindow) MainWindow.setTabOrder(self.history, self.pushButton) MainWindow.setTabOrder(self.textEdit, self.pushButton)
邏輯:
1.獲取輸入框
2.調用chat(圖靈機器人)
3.添加到歷史中
4.清空輸入框
def pushButton(self): #提問 q_text = self.ui.textEdit.toPlainText() #清空輸入框 self.ui.textEdit.clear() #調用圖靈機器人 a_text = self.chat(q_text) a_text = "【機器人】:"+a_text ## 記錄到聊天記錄中 history = self.ui.history.toPlainText() history = history+"\n"+"【我】:"+q_text+"\n"+a_text self.ui.history.setText(history)
03 效果演示
動圖:
最終圖:
0四、打包exe
將python文件打包成一個exe可執行文件
經過命令:
pyinstaller -F -w main.py
通過辰哥的測試,打包好的exe文件能夠在任何一臺電腦上執行,而且不賴主機的python環境
因爲辰哥技術有限,裏面帶有圖片打包出錯,所以這裏辰哥先把圖片去掉了,後面再考慮如何帶圖片的打包
打包好EXE下載地址:https://wwi.lanzoui.com/iCygNrp0c6f
0五、小結
本文目標:打造一個window桌面應用:在線聊天對話機器人。從界面設計,處處理後端對話,最後打包成exe。
不會的小夥伴,感受動手練習!!!!最後說一聲:原創不易,求給個贊!