超詳細(xì)Windows + Python + PyQt5 + Pycharm 環(huán)境搭建

之前一直用Qt寫C++允瞧,最近想玩玩Python,參考了好幾個(gè)教程射众,每個(gè)教程都有點(diǎn)坑碟摆。于是自己整理了下可能會(huì)碰到的問題,方便其他想用PyQt5 (GPL) 的小伙伴吧叨橱。如果想用PySide2 (LGPL) 過程也基本類似典蜕,就把PyQt5的相關(guān)內(nèi)容替換下就行。

Python安裝

Python主程序安裝

單個(gè)版本Python

Python官網(wǎng)下載地址罗洗,目前最新的是Python3.7愉舔,我用的是Python3.6,沒用最新的主要是擔(dān)心PyQt那邊沒更新

多個(gè)版本Python

有的小伙伴可能需要安裝多個(gè)版本的Python伙菜,在Linux和Mac上可能需要啥管理工具啥的轩缤,具體可以看看Python版本管理如果你是Windows贩绕,直接安裝就可以了火的,具體要用哪個(gè)版本的Python只要加上對(duì)應(yīng)的環(huán)境變量即可。

添加環(huán)境變量

也不用裝什么版本管理工具淑倾,就是這么簡(jiǎn)單馏鹤。還有也可以通過命令行切換Python版本,但是敲命令行有時(shí)候老是忘記娇哆,不折騰自己了湃累,可以了解下勃救。

給Python添加鏡像源

不管是用npm還是pip等包管理工具的時(shí)候,國(guó)內(nèi)最好都是換下相關(guān)的鏡像源脱茉,要不然你就只能龜速下載了...

可用鏡像源

清華:https://pypi.tuna.tsinghua.edu.cn/simple
阿里云:http://mirrors.aliyun.com/pypi/simple/
中國(guó)科技大學(xué):https://pypi.mirrors.ustc.edu.cn/simple/
華中理工大學(xué):http://pypi.hustunique.com/
山東理工大學(xué):http://pypi.sdutlinux.org/
豆瓣:http://pypi.douban.com/simple/

添加pip.ini

C:\Users\Administrator下新建一個(gè)pip文件夾剪芥,在文件夾中新建一個(gè)pip.ini文件:

創(chuàng)建pip文件夾

在pip.ini中添加以下內(nèi)容,之后再用pip下載包就可以體驗(yàn)飛速下載了:


添加鏡像源

PyQt5安裝

環(huán)境變量加上了Python對(duì)應(yīng)的文件夾后琴许,就可以通過pip安裝PyQt5税肪。默認(rèn)安裝最新的版本,在命令行輸入:

pip install PyQt5

如果需要安裝指定版本的QyQt5榜田,改成輸入:

pip install PyQt5==5.10.1

界面工具安裝

PyQt5只用到了Qt的designer.exe益兄,這是用來設(shè)計(jì)界面的一個(gè)工具,生成的界面文件是.ui的箭券,PyQt5的作用就是把這個(gè)ui文件轉(zhuǎn)換成py文件净捅。

pyqt5-tools

PyQt5有對(duì)應(yīng)的這個(gè)工具,包含designer.exe辩块。但是官方只更新到了Qt5.9的蛔六,而且我也裝有Qt,就不考慮此方案了废亭。

Qt安裝

安裝哪個(gè)版本基本上都沒啥差別国章,只要有designer.exe,可以生成ui文件就行豆村。附上Qt下載地址液兽。

Pycharm安裝

這個(gè)公司有很多IDE都挺好用的,而且還有一個(gè)非常好的福利掌动,對(duì)于有教育郵箱的用戶四啰,可以免費(fèi)使用一年。附上通過教育郵箱激活Pycharm粗恢。

Pycharm配置

打開Pycharm柑晒,F(xiàn)iles->Settings->External Tools,添加兩個(gè)tools眷射,Qt Designer敦迄、PyUIC:


添加Tools
添加Qt Designer
  1. Programs:的地方找到你自己的designer.exe所在的位置
  2. Working directory:的地方填上$ProjectFileDir$ (填$FileDir$好像也行)。
添加PyUIC
  1. Programs:的地方找到你自己的python.exe所在的位置
  2. Arguments:的地方填上-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
  3. Working directory:的地方填上$FileDir$

Hello World

環(huán)境搭建好了凭迹,來實(shí)際編寫一個(gè)項(xiàng)目試試

新建Python項(xiàng)目

新建Python項(xiàng)目

這里注意罚屋,上面的New environment using是在項(xiàng)目下添加一個(gè)Python的環(huán)境,如果要使用PyQt5的話要將底下兩個(gè)勾選框勾上嗅绸;也可以使用自己本地的Python脾猛,就選擇底下的Existing interpreter,指定Python.exe位置即可鱼鸠。

創(chuàng)建ui文件

創(chuàng)建ui文件

按照?qǐng)D示選擇Qt Designer就會(huì)啟動(dòng)Qt的designer.exe了猛拴,你也可以直接到Qt的目錄下運(yùn)行程序羹铅。然后就是愉快的拖控件時(shí)間:


ui文件生成

界面設(shè)計(jì)完畢,將ui文件保存到Python工程所在的目錄下即可愉昆,PyCharm中的項(xiàng)目可以看到對(duì)應(yīng)的ui文件职员。

ui文件生成py文件

在ui文件上點(diǎn)擊右鍵,External Tools->PyUIC跛溉,就能生成對(duì)應(yīng)的py文件了:


生成py文件

添加main.py

給程序添加一個(gè)入口焊切,在工程目錄下新建一個(gè)main.py,在其中添加代碼:

import sys
import HelloWorld
from PyQt5.QtWidgets import QApplication, QMainWindow
if __name__ == '__main__':
    app = QApplication(sys.argv)
    MainWindow = QMainWindow()
    ui = HelloWorld.Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())
main.py

運(yùn)行

在main.py中芳室,點(diǎn)擊右鍵->Run main专肪,即可運(yùn)行程序。


運(yùn)行
運(yùn)行界面

總結(jié)

搭建PyQt5的相關(guān)環(huán)境其實(shí)也不復(fù)雜堪侯,這其中有很多可以根據(jù)自己的環(huán)境修改的地方嚎尤,比如:

  • 你需要用PySide2,就換掉PyQt5的內(nèi)容
  • 你有Qt的話伍宦,就不用再額外安裝designer.exe
  • IDE也不一定用PyCharm芽死,你用VS2017寫Python也行

參考鏈接

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市次洼,隨后出現(xiàn)的幾起案子关贵,更是在濱河造成了極大的恐慌,老刑警劉巖滓玖,帶你破解...
    沈念sama閱讀 206,126評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異质蕉,居然都是意外死亡势篡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門模暗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來禁悠,“玉大人,你說我怎么就攤上這事兑宇“欤” “怎么了?”我有些...
    開封第一講書人閱讀 152,445評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵隶糕,是天一觀的道長(zhǎng)瓷产。 經(jīng)常有香客問我,道長(zhǎng)枚驻,這世上最難降的妖魔是什么濒旦? 我笑而不...
    開封第一講書人閱讀 55,185評(píng)論 1 278
  • 正文 為了忘掉前任,我火速辦了婚禮再登,結(jié)果婚禮上尔邓,老公的妹妹穿的比我還像新娘晾剖。我一直安慰自己,他們只是感情好梯嗽,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評(píng)論 5 371
  • 文/花漫 我一把揭開白布齿尽。 她就那樣靜靜地躺著,像睡著了一般灯节。 火紅的嫁衣襯著肌膚如雪循头。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 48,970評(píng)論 1 284
  • 那天显晶,我揣著相機(jī)與錄音贷岸,去河邊找鬼。 笑死磷雇,一個(gè)胖子當(dāng)著我的面吹牛偿警,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播唯笙,決...
    沈念sama閱讀 38,276評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼螟蒸,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了崩掘?” 一聲冷哼從身側(cè)響起七嫌,我...
    開封第一講書人閱讀 36,927評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎苞慢,沒想到半個(gè)月后诵原,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,400評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡挽放,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評(píng)論 2 323
  • 正文 我和宋清朗相戀三年绍赛,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片辑畦。...
    茶點(diǎn)故事閱讀 37,997評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡吗蚌,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出纯出,到底是詐尸還是另有隱情蚯妇,我是刑警寧澤,帶...
    沈念sama閱讀 33,646評(píng)論 4 322
  • 正文 年R本政府宣布暂筝,位于F島的核電站箩言,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏焕襟。R本人自食惡果不足惜分扎,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望胧洒。 院中可真熱鬧畏吓,春花似錦墨状、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至宏悦,卻和暖如春镐确,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背饼煞。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評(píng)論 1 260
  • 我被黑心中介騙來泰國(guó)打工源葫, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人砖瞧。 一個(gè)月前我還...
    沈念sama閱讀 45,423評(píng)論 2 352
  • 正文 我出身青樓息堂,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親块促。 傳聞我的和親對(duì)象是個(gè)殘疾皇子荣堰,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評(píng)論 2 345

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