Python Qt 簡介


Python圖形界面開發的幾種方案

前面的教程中,我們程序的用戶交互界面都是命令行終端窗口。

程序的用戶交互界面,英文稱之為 UI (user interface)

當一個應用的 UI 比較復雜的時候,命令行方式就不便用戶使用了,這時我們需要圖形界面。

如果用 Python 語言開發 跨平台 的圖形界面的程序,主要有3種選擇:

  • Tkinter

    基於Tk的Python庫,這是Python官方采用的標准庫,優點是作為Python標准庫、穩定、發布程序較小,缺點是控件相對較少。

     

  • wxPython

    基於wxWidgets的Python庫,優點是控件比較豐富,缺點是穩定性相對差點、文檔少、用戶少。

     

  • PySide2、PyQt5

    基於Qt 的Python庫,優點是控件比較豐富、跨平台體驗好、文檔完善、用戶多。

    缺點是 庫比較大,發布出來的程序比較大。


白月黑羽的建議是,如果大家要開發小工具,界面比較簡單,可以采用Tkinter。

如果是發布功能比較多的正式產品,采用 基於Qt的PySide2、PyQt5。

本教程介紹的就是 使用 PySide2、PyQt5 開發Python程序的圖形界面。

 

PySide2、PyQt5 簡介

PySide2、PyQt5 都是基於著名的 Qt 庫。

Qt庫里面有非常強大的圖形界面開發庫,但是Qt庫是C++語言開發的,PySide2、PyQt5可以讓我們通過Python語言使用Qt。

但是 PySide2、PyQt5 這兩者有什么區別呢?

可以形象地這樣說: PySide2 是Qt的 親兒子 , PyQt5 是Qt還沒有親兒子之前的收的 義子 (Riverbank Computing這個公司開發的)。

那為什么 PyQt5 這個義子 反而比 PySide2 這個親兒子更出名呢?

原因很簡單:PySide2 這親兒子最近(2018年7月)才出生。

但是親兒子畢竟是親兒子,Qt准備大力培養,PySide2 或許更有前途。

已經在使用 PyQt5 的朋友不要皺眉, 兩個庫的使用 對程序員來說,差別很小:它們的調用接口幾乎一模一樣。

如果你的程序是PyQt5開發的,通常只要略作修改,比如把導入的名字從 PyQt5 換成 PySide2 就行了。反之亦然。

注意:必須先具備Python基礎知識,才可以學習本教程。還沒有Python基礎的朋友,可以直接學習本網站的Python基礎教程。

安裝 PySide2

很簡單,直接執行

pip install pyside2

即可下載安裝。

這個庫比較大,大概有100M左右,大家耐心等待。

有的朋友,網絡比較慢,可以指定國內的安裝源,下載安裝。

比如,使用豆瓣源下載安裝:

pip install pyside2 -i https://pypi.douban.com/simple/

建議:如果你的程序要發布給客戶使用,建議使用32位的Python解釋器,這樣打包發布的exe程序可以兼容32位的Windows

注意:

Qt 官方網站聲明了: Windows上 Python 3.8.0 調用 Qt 5.14 , 會有問題。

有類似下面這樣的導入錯誤

ImportError: Dll load failed while importing shiboken2: 找不到指定的程序

所以, 就是不能用 Python 3.8.0 ,請使用3.8.1或者以后的版本, Python 3.7 也可以。

安裝PyQt5

如果你選擇PyQt5,直接執行

pip install pyqt5-tools

ubuntu

pip install qttools5-dev-tools

即可同時安裝 PyQt5 和 一些重要的工具,比如 Qt designer。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM