Win10系統(tǒng)下Python + PyQt5 + PyQt5-tools(or QT) + Pycharm的環(huán)境搭建

結(jié)合自己的使用過程称鳞,近期整理了Win10系統(tǒng)下python + PyQT5 + PyQt5-tools(or QT) + pycharm環(huán)境搭建過程,Share在這里共勉共進(jìn)。

解析

Python

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/

PyQt5

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-tools是基于PyQt5的工具集,其包含了Qt-Designer纲仍,QML插件等呀袱,一般安裝該工具集是為了使用Qt-Designer。

下載地址:https://pypi.org/project/pyqt5-tools/#files

QT

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

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

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

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误趴,如下圖:


Python

2)Python安裝時(shí)可勾選添加到環(huán)境變量PATH霹琼,如忘記,可在安裝完成后手動(dòng)添加凉当,如下圖:

Path

3)選擇對(duì)應(yīng)的平臺(tái)的Pycharm枣申,下載社區(qū)版后(當(dāng)然你也可付費(fèi)選擇專業(yè)版),正常按照即可看杭。

Pycharm

4)Pycharm安裝時(shí)可勾選添加到環(huán)境變量PATH忠藤,如忘記,可在安裝完成后手動(dòng)添加楼雹,如下圖:


OK, 重頭戲來了熄驼,下面重點(diǎn)介紹如何使用pip工具PyQt5 和 PyQt5-tools(or QT)的安裝,當(dāng)然還包括SIP的安裝烘豹,并解決安裝過程中遇到的問題

SIP

pip install sip

PyQt5

pip install PyQt5

PyQt5-tools

pip install PyQt5-tools

QT

就留給大家自己做吧瓜贾,其實(shí)Windows下QT的安裝比較簡單,下載安裝即可(只需要注意在安裝中選中相關(guān)組件)

安裝過程中可能出現(xià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用戶目錄

--user

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)行配置污呼,如下圖

Pycharm Qt-Designer
Qt-Designer

注意:Program欄Qt-Desinger的路徑裕坊,Working directory欄填寫變量$FileDir$即可。

2)配置PyUIC轉(zhuǎn)換工具

Pycharm Py-UIC
Py-UIC

注意:Program欄Python解釋器的路徑燕酷,Arguments欄填寫如下參數(shù):

-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py

Working directory欄填寫變量$FileDir$即可籍凝。

3)配置Python程序的解釋器

Pycharm - Python

應(yīng)用

完成以上安裝和配置周瞎,可以開始第一個(gè)基于PyQT的GUI和Python應(yīng)用項(xiàng)目了,基本上按照以下步驟:

1)在Pycharm中打開QT_Designer進(jìn)行GUI設(shè)計(jì)饵蒂,生成.ui文件

Pycharm - Qt Designer
Qt Designer

2)在Pycharm中打開 PyUIC 將.ui 文件轉(zhuǎn)換成.py文件

Pycharm - Py UIC

3)編寫Python程序声诸,import前面生成的.py 文件,再在其中調(diào)用

pyqt_test.py

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)自查......

###修改主程序,如下圖

pyqt_test.py

###新添加click.py文件膏萧,實(shí)現(xiàn)點(diǎn)擊顯示的功能漓骚,作為主程序調(diào)用庫

click.py

運(yùn)行主程序,點(diǎn)擊ok按鈕榛泛,顯示hello world, 最終實(shí)現(xiàn)效果圖:

pyqt_test.py

Anyway蝌蹂,這部分就留給讀者,根據(jù)你的需求發(fā)揮你的想象曹锨,在自己的Python應(yīng)用程序中遨游吧孤个!

參考:

https://blog.csdn.net/qq_44740544/article/details/90108169

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市沛简,隨后出現(xiàn)的幾起案子齐鲤,更是在濱河造成了極大的恐慌,老刑警劉巖椒楣,帶你破解...
    沈念sama閱讀 206,839評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件给郊,死亡現(xiàn)場離奇詭異,居然都是意外死亡捧灰,警方通過查閱死者的電腦和手機(jī)侠坎,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門耸峭,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事亦镶。” “怎么了秃殉?”我有些...
    開封第一講書人閱讀 153,116評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵识埋,是天一觀的道長。 經(jīng)常有香客問我唧席,道長擦盾,這世上最難降的妖魔是什么嘲驾? 我笑而不...
    開封第一講書人閱讀 55,371評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮迹卢,結(jié)果婚禮上辽故,老公的妹妹穿的比我還像新娘。我一直安慰自己腐碱,他們只是感情好誊垢,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,384評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著症见,像睡著了一般喂走。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上谋作,一...
    開封第一講書人閱讀 49,111評(píng)論 1 285
  • 那天芋肠,我揣著相機(jī)與錄音,去河邊找鬼遵蚜。 笑死帖池,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的吭净。 我是一名探鬼主播睡汹,決...
    沈念sama閱讀 38,416評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼寂殉!你這毒婦竟也來了帮孔?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,053評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤不撑,失蹤者是張志新(化名)和其女友劉穎文兢,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體焕檬,經(jīng)...
    沈念sama閱讀 43,558評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡姆坚,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,007評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了实愚。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片兼呵。...
    茶點(diǎn)故事閱讀 38,117評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖腊敲,靈堂內(nèi)的尸體忽然破棺而出击喂,到底是詐尸還是另有隱情,我是刑警寧澤碰辅,帶...
    沈念sama閱讀 33,756評(píng)論 4 324
  • 正文 年R本政府宣布懂昂,位于F島的核電站,受9級(jí)特大地震影響没宾,放射性物質(zhì)發(fā)生泄漏凌彬。R本人自食惡果不足惜沸柔,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,324評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望铲敛。 院中可真熱鬧褐澎,春花似錦、人聲如沸伐蒋。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽先鱼。三九已至俭正,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間型型,已是汗流浹背段审。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評(píng)論 1 262
  • 我被黑心中介騙來泰國打工全蝶, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留闹蒜,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,578評(píng)論 2 355
  • 正文 我出身青樓抑淫,卻偏偏與公主長得像绷落,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子始苇,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,877評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容