Python GUI程式設計實現方式優缺點對比
從 Python 語言的誕生之日起,就有許多優秀的 GUI 工具集整合到 Python 當中,這些優秀的 GUI 工具集,使得 Python 也可以在圖形介面程式設計領域當中大展身手,由於 Python 的流行,許多應用程式都是由 Python 結合那些優秀的 GUI 工具集編寫的。下面分別介紹 Python GUI 程式設計的各種實現,下面的許多內容都是來自維基百科(文章後面列出了參考),這裡就當做是一個沒有技術色彩的整合吧。
1.Tkinter
簡單介紹:
是綁定了 Python 的 Tk GUI 工具集 ,就是Python 包裝的Tcl程式碼,通過內嵌在 Python 直譯器內部的Tcl 直譯器實現, Tkinter
的呼叫轉換成 Tcl 命令,然後交給 Tcl 直譯器進行解釋,實現 Python 的 GUI 介面。
對比Tk和其它語言的繫結,比如 PerlTk ,是直接由 Tk 中的 C 庫實現的。
優點:
歷史最悠久, Python 事實上的標準 GUI , Python 中使用 Tk GUI 工具集的標準介面,已經包括在標準的 Python Windows 安
裝中,著名的 IDLE 就是使用 Tkinter 實現 GUI 的建立的 GUI 簡單,學起來和用起來也簡單。
2.wxPython
簡單介紹:
Python 對跨平臺的 GUI 工具集 wxWidgets ( C++ 編寫)的包裝,作為 Python 的一個 擴充套件模組實現。
優點:
比較流行的一個 Tkinter 的替代品,在 各種平臺下都表現挺好。
3.PyGTK
簡單介紹:
一系列的 Python 對 GTK+ GUI 庫的包裝。
優點:
比較流行的一個 Tkinter 的替代品,許多 Gnome 下的著名應用程式的 GUI 都是使用 PyGTK 實現的,比如 BitTorrent , GIMP
和 Gedit 都有可選的實現,在 Windows 平臺 似乎表現不太好,這點也無可厚非,畢竟使用的是 GTK的 GUI 庫。
4.PyQt
簡單介紹:
Python 對跨平臺的 GUI 工具集 Qt 的包裝實現了 440 個類以及 6000 個函式或者方法 ,PyQt 是作為Python 的外掛實現的。
優點:
比較流行的一個 Tkinter 的替代品,功能 非常強大,可以用Qt開發多美漂亮的介面,也就可以用PyQt開發多麼漂亮的介面。
跨平臺的支援很好,不過在商業授權上似乎存在一些問題。
5.PySide
簡單介紹:
另一個 Python 對跨平臺的 GUI 工具集 Qt 的包裝,捆綁在 Python 當中,最初由 BoostC++ 庫實現,後來遷移到 Shiboken。
優點:
比較流行的一個 Tkinter 的替代品,和上 面類似,至於兩者的區別,這裡 有一個介紹。