如果要在 Python 上面寫 GUI 介面,推薦跨平台跨語言的Qt,它有 App Designer 可以直接排版後自動生成程式碼。用 signal / slot 作為物件之間的溝通,簡化了很多開發上的複雜度。Qt 底層為 C++ ,所以執行速度較快。PyQt5 只支援 Python 3 ,且不向下支援 PyQt4。
Pycharm 算是個人蠻推薦的 Python IDE,有強大的除錯功能,可以自動整理程式碼,並可以與許多工具結合,比用單純的文字編輯器好很多。
以下專注在 Windows 10,Pycharm 灌好的前提下,如何安裝 PyQt5 並連動:
- 打開 Settings
使用方法:
- Qt Designer
- 右鍵選單 External Tools 內執行 Qt Designer
 - 生成一個 MainWindow App
 - 做一些設計並存檔
 - 在 Project 底下會生出一個 .ui 檔

- 右鍵選單 External Tools 內執行 Qt Designer
- PyUIC
- 對剛剛產生的 .ui 檔案右鍵,External Tools 內執行 PyUIC
 - 會自動生成一個 .py 圖形介面檔(不要編輯這個檔案,因為每次生成後會被洗掉)

- 對剛剛產生的 .ui 檔案右鍵,External Tools 內執行 PyUIC
因為 Qt 做出來的是介面,程式邏輯需要另外寫一個檔案,以 calculator.py 介面為例,建立一個call_calculator.py:
<pre class="brush: python; title: ; notranslate" title="">
import sys
from PyQt5.QtWidgets import QMainWindow, QApplication
from calculator import *
class MyMainWindow(QMainWindow, Ui_MainWindow):
def __init__(self, parent=None):
super(MyMainWindow, self).__init__(parent)
self.setupUi(self)
if __name__ == "__main__":
app = QApplication(sys.argv)
myWin = MyMainWindow()
myWin.show()
sys.exit(app.exec_())

執行後就會看到剛剛設計的 App,但是後面的邏輯還沒寫,所以所有的按鈕都不會有反應。邏輯寫法請參照
PyQt5 Signal / Slot 機制入門