結(jié)合自己的使用過程称鳞,近期整理了Win10系統(tǒng)下python + PyQT5 + PyQt5-tools(or QT) + pycharm環(huán)境搭建過程,Share在這里共勉共進(jìn)。
解析
Python是一種跨平臺(tái)的計(jì)算機(jī)程序設(shè)計(jì)語言浪南。是一種面向?qū)ο蟮膭?dòng)態(tài)類型語言,最初被設(shè)計(jì)用于編寫自動(dòng)化腳本(shell),隨著版本的不斷更新和語言新功能的添加银萍,越多被用于獨(dú)立的、大型項(xiàng)目的開發(fā)恤左。
下載地址:https://www.python.org/downloads/
PyQt是一個(gè)創(chuàng)建GUI應(yīng)用程序的工具包贴唇。它是Python編程語言和Qt庫的成功融合。Qt庫是目前最強(qiáng)大的庫之一飞袋。PyQt是由Phil Thompson 開發(fā)戳气。截至目前2020年,PyQt最新版本是第五版巧鸭,即PyQT5瓶您。
下載地址:https://www.riverbankcomputing.com/software/pyqt/download5/
PyQT5-tools是基于PyQt5的工具集,其包含了Qt-Designer纲仍,QML插件等呀袱,一般安裝該工具集是為了使用Qt-Designer。
下載地址:https://pypi.org/project/pyqt5-tools/#files
Qt?是一個(gè)跨平臺(tái)C++圖形用戶界面應(yīng)用程序開發(fā)框架巷折。它既可以開發(fā)GUI程序压鉴,也可用于開發(fā)非GUI程序,比如控制臺(tái)工具和服務(wù)器锻拘。Qt是面向?qū)ο蟮目蚣苡涂裕褂锰厥獾拇a生成擴(kuò)展(稱為元對(duì)象編譯器(Meta Object Compiler, moc))以及一些宏,Qt很容易擴(kuò)展署拟,并且允許真正地組件編程婉宰。
下載地址:http://download.qt.io/archive/qt/
以下是基于QT的幾個(gè)延伸補(bǔ)充:
Qt SDK:包含了 Qt 庫以及 Qt 的開發(fā)工具(IDE、i18n 等工具)推穷,是一套完整的開發(fā)環(huán)境心包。當(dāng)然,這個(gè)的體積也是最大的(Windows 平臺(tái)大約 1.7G馒铃,其它平臺(tái)大約 780M)蟹腾。如果僅僅為開發(fā) Qt,建議選擇這一項(xiàng)下載安裝区宇。安裝方法很簡單娃殖,同普通程序沒有什么區(qū)別。所需注意的是议谷,安裝過程中可能能夠提供選擇是否安裝源代碼炉爆,是否安裝 mingw 編譯器(Windows),這個(gè)就按照需要進(jìn)行選擇即可。
Qt Library:僅包含 Qt 庫芬首。如果您已經(jīng)安裝了 Qt 開發(fā)環(huán)境赴捞,為了升級(jí)一下 SDK 中提供的 Qt 庫版本,就可以安裝這一個(gè)郁稍。安裝過之后赦政,應(yīng)該需要在 IDE 中配置安裝路徑,以便找到最新版本的 Qt(如果不是覆蓋安裝的話)耀怜。
Qt Creator:基于 Qt 構(gòu)建的一個(gè)輕量級(jí) IDE昼钻。包括項(xiàng)目生成向?qū)А⒏呒?jí)的 C++ 代碼編輯器封寞、瀏覽文件及類的工具然评、集成了 Qt Designer、Qt Assistant狈究、Qt Linguist碗淌、圖形化的 GDB 調(diào)試前端、 qmake 構(gòu)建工具等抖锥,還是比較好用的亿眠,建議使用 Qt Creator 進(jìn)行開發(fā)。當(dāng)然磅废,如果你已經(jīng)習(xí)慣了 VS 這樣的工具纳像,可以在頁面最下方找到相應(yīng)的 Addin。Qt Creator 包括項(xiàng)目生成向?qū)д恪⒏呒?jí)的 C++ 代碼編輯器竟趾、瀏覽文件及類的工具、集成了 Qt Designer宫峦、Qt Assistant岔帽、Qt Linguist、圖形化的 GDB 調(diào)試前端导绷,集成 qmake 構(gòu)建工具等犀勒。
Qt Designer:是Qt程序UI界面的實(shí)現(xiàn)工具。其設(shè)計(jì)符合MVC的架構(gòu)妥曲,實(shí)現(xiàn)視圖和邏輯的分離贾费,從而提升開發(fā)小綠。其操作方式十分靈活檐盟,可通過拖拽的方式放置控件并隨時(shí)查看控件效果褂萧,所作即所見,所見即所得遵堵。其生成的.ui文件(實(shí)質(zhì)上是XML格式的文件)箱玷,可以通過pyuic5工具(包含在PyQt5中)轉(zhuǎn)換成.py文件,作為python自定義UI庫被調(diào)用陌宿,當(dāng)然也是可以被python程序直接調(diào)用锡足。
PyCharm是一種Python?IDE,帶有一整套可以幫助用戶在使用Python語言開發(fā)時(shí)提高其效率的工具壳坪,比如調(diào)試舶得、語法高亮、Project管理爽蝴、代碼跳轉(zhuǎn)沐批、智能提示、自動(dòng)完成蝎亚、單元測試九孩、版本控制。此外发框,該IDE提供了一些高級(jí)功能躺彬,以用于支持Django框架下的專業(yè)Web開發(fā)。
下載地址:https://www.jetbrains.com/pycharm/download/
sip是RiverBank(也就是PyQt的開發(fā)商)開發(fā)的梅惯,用于PyQt為C和C ++庫創(chuàng)建Python綁定的混合編程解決方案宪拥。由于Qt框架的復(fù)雜性,PyQt并沒有使用Cython铣减、SWIG的混合編程方案她君,而是自己單獨(dú)做了一套框架。sip包括一個(gè)sip工具葫哗、SDK和Python Module缔刹。
下載地址:https://pypi.org/project/sip/#files
pip 是 Python 包管理工具,該工具提供了對(duì)Python 包的查找劣针、下載桨螺、安裝、卸載的功能酿秸。后面Python和QT的相關(guān)工具都采用直接的PIP安裝方式灭翔。如果您使用的是從python.org下載的Python 2> = 2.7.9或Python 3> = 3.4,或者您正在使用virtualenv或pyvenv創(chuàng)建的虛擬環(huán)境中工作辣苏,則已經(jīng)安裝了對(duì)應(yīng)的pip肝箱,當(dāng)然你也可以下載后手動(dòng)安裝。例如:我的Python3.8, 其默認(rèn)已經(jīng)安裝了pip3稀蟋。
下載地址:https://pypi.org/project/pip/#files
安裝
關(guān)于Python和Pycharm的安裝煌张,這里就不打算介紹了,按照上面的url下載后退客,在win10上一步步正常按照即可骏融。
注意以下幾點(diǎn):
1)下載Python時(shí)链嘀,選擇對(duì)應(yīng)的操作系統(tǒng),體系架構(gòu)和適用平臺(tái)档玻,例如我的電腦就是Windows x86-64怀泊、桌面執(zhí)行使用,故選擇下載Windows x86-64 executable installer误趴,如下圖:
2)Python安裝時(shí)可勾選添加到環(huán)境變量PATH霹琼,如忘記,可在安裝完成后手動(dòng)添加凉当,如下圖:
3)選擇對(duì)應(yīng)的平臺(tái)的Pycharm枣申,下載社區(qū)版后(當(dāng)然你也可付費(fèi)選擇專業(yè)版),正常按照即可看杭。
4)Pycharm安裝時(shí)可勾選添加到環(huán)境變量PATH忠藤,如忘記,可在安裝完成后手動(dòng)添加楼雹,如下圖:
OK, 重頭戲來了熄驼,下面重點(diǎn)介紹如何使用pip工具PyQt5 和 PyQt5-tools(or QT)的安裝,當(dāng)然還包括SIP的安裝烘豹,并解決安裝過程中遇到的問題
pip install sip
pip install PyQt5
pip install PyQt5-tools
就留給大家自己做吧瓜贾,其實(shí)Windows下QT的安裝比較簡單,下載安裝即可(只需要注意在安裝中選中相關(guān)組件)
1)pip不匹配携悯,安裝失敗
當(dāng)前PC是pip/pip2, 不是最新版的pip3或者pip沒有指向pip3祭芦,安裝pip3即可,注意由于PyQt5僅支持python3憔鬼,不支持python2龟劲,所以必須安裝python3和pip3.
2)連接超時(shí),無法下載并完成安裝
若是自身網(wǎng)速原因轴或,則延長訪問超時(shí)時(shí)間:
pip --default-timeout=100 install PyQt5(第三方庫)
若是服務(wù)器響應(yīng)或者VPN問題昌跌,則更換國內(nèi)下載源:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple PyQt5(第三方庫)
幾個(gè)國內(nèi)的鏡像源網(wǎng)站供參考:
https://pypi.douban.com/simple (豆瓣)
https://pypi.tuna.tsinghua.edu.cn/simple (清華大學(xué))
https://mirrors.ustc.edu.cn/pypi/web/simple (中國科技大學(xué))
https://mirrors.aliyun.com/pypi/simple/ (阿里)
3)PermissionError: [WinError 5]?
需添加--user參數(shù),即安裝到python用戶目錄
pip install --user?PyQt5(第三方庫)
4)PermissionError: [Errno 13] Permission denied:‘C:\Users…\AppData\Roaming\Python\Python37\site-packages\PyQt5\Qt\bin\d3dcompiler_47.dll’
因?yàn)楹笈_(tái)有python服務(wù)在運(yùn)行照雁,所以安裝失敗蚕愤,只需關(guān)閉與python有關(guān)的服務(wù)或者直接關(guān)機(jī)重啟后重新安裝即可(可能需要多次關(guān)機(jī)重啟)
配置
這里主要是進(jìn)行Pycharm的配置,實(shí)現(xiàn)以下三個(gè)目的:
1)使用Qt-Designer進(jìn)行GUI設(shè)計(jì)
2)使用外部工具PyUIC轉(zhuǎn)換ui文件成對(duì)應(yīng)python文件
3)編譯和運(yùn)行python程序
打開Pycharm應(yīng)用程序后饺蚊,使用Ctrl+Alt+s組合鍵打開配置窗口萍诱,開始以下配置
1)配置GUI設(shè)計(jì)工具
在External Tools窗口添加Qt-Designer,并進(jìn)行配置污呼,如下圖
注意:Program欄Qt-Desinger的路徑裕坊,Working directory欄填寫變量$FileDir$即可。
2)配置PyUIC轉(zhuǎn)換工具
注意:Program欄Python解釋器的路徑燕酷,Arguments欄填寫如下參數(shù):
-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
Working directory欄填寫變量$FileDir$即可籍凝。
3)配置Python程序的解釋器
應(yīng)用
完成以上安裝和配置周瞎,可以開始第一個(gè)基于PyQT的GUI和Python應(yīng)用項(xiàng)目了,基本上按照以下步驟:
1)在Pycharm中打開QT_Designer進(jìn)行GUI設(shè)計(jì)饵蒂,生成.ui文件
2)在Pycharm中打開 PyUIC 將.ui 文件轉(zhuǎn)換成.py文件
3)編寫Python程序声诸,import前面生成的.py 文件,再在其中調(diào)用
4)拓展Python程序苹享,定制用戶所需功能
我就舉例實(shí)現(xiàn)在上圖中”點(diǎn)擊OK按鈕,顯示hello world“的功能浴麻,操作以下三個(gè)步驟:
###將轉(zhuǎn)換后的py文件中的
MainWindow.setCentralWidget(self.centralwidget)
MainWindow.setMenuBar(self.menubar)
MainWindow.setStatusBar(self.statusbar)
這3行語句注釋掉得问,然后就可以在這個(gè)界面的基礎(chǔ)上愉快的實(shí)現(xiàn)自己的功能,不然后面整體編譯時(shí)不通過软免。原因時(shí)什么呢宫纬?請(qǐng)自查......
###修改主程序,如下圖
###新添加click.py文件膏萧,實(shí)現(xiàn)點(diǎn)擊顯示的功能漓骚,作為主程序調(diào)用庫
運(yùn)行主程序,點(diǎn)擊ok按鈕榛泛,顯示hello world, 最終實(shí)現(xiàn)效果圖:
Anyway蝌蹂,這部分就留給讀者,根據(jù)你的需求發(fā)揮你的想象曹锨,在自己的Python應(yīng)用程序中遨游吧孤个!
參考: