如何在Python下搭建QT+SIP+PyQt5環(huán)境

由于在python GUI界面開發(fā)的時候,想著不想用純代碼編寫界面(沒錯,就是懶),網(wǎng)上百度了一下發(fā)現(xiàn)大家都是在用PyQt5來進行python界面的開發(fā),在環(huán)境搭建的實際情況中,發(fā)現(xiàn)網(wǎng)上很多文章寫得都不全,安裝過程總是出現(xiàn)這樣那樣的問題,想著自己來總結(jié)一下,于是這邊文章就來啦!

由于PyQt5只有針對Python3的安裝包而沒有針對python2的,所以本篇文章是基于Python3.6.x版本!!

首先我們來了解一下一些命令(下面會用到)

1.pip命令

pip install xxx    #安裝某個第三方庫

pip是python自帶的包管理工具,全稱python install pakeage,我們在使用python開發(fā)的過程中,除了python自帶的類庫.基本所有的第三方庫我們都是可以通過pip來安裝,好處在于他可以隨時的更新我們的庫.

2.pip3命令

pip3 install xx #安裝某個第三方庫

pip3是python3.0之后出來的pip進階版本,當(dāng)你安裝python3的時候,就可以使用該命令,當(dāng)然也可以使用pip命令.兩者效果一樣.當(dāng)你電腦安裝了python2.7和python3.x兩個版本的時候,pip3命令安裝的庫默認出現(xiàn)在python3.x的文件夾中.

3.brew命令

brew install xx 安裝某個程序或者文件

Homebrew是mac系統(tǒng)上的包管理工具,基本上只要能在mac上安裝的東西,都可以通過Homebrew來安裝和管理.并且可以及時的對其進行更新.下載地址

1.配置QT

1.1什么是QT仗谆?

Qt 是一個跨平臺的 C++ 應(yīng)用程序開發(fā)框架啥么,是自由且開放源代碼的軟件

1.2下載安裝

你可以去官網(wǎng)下載(記住下載頁面右邊的開源版本,這是免費的)下載你對應(yīng)平臺的包.

如果你是mac系統(tǒng),也可以通過Homebrew來安裝

brew install qt

如下就安裝完畢啦:

image

紅色部分是文件的解壓路徑.先記住,后面會用.

2.配置SIP

2.1 什么是sip杆故?

sip是RiverBank(也就是PyQt的開發(fā)商)開發(fā)的用于PyQt的Python/C++混合編程解決方案拂铡。由于Qt框架的復(fù)雜性体捏,PyQt并沒有使用Cython滴肿、SWIG的混合編程方案窄做,而是自己單獨做了一套框架吃衅。sip包括一個sip工具往踢、SDK和Python Module。

與SWIG類似徘层,使用sip也需要先編寫一個『配置文件』峻呕,然后使用sip工具『編譯』為C++源文件,最后趣效,和Qt庫一起編譯形成適用于Python的PyQt瘦癌。

與SWIG不同的是,sip同時以Python Module的形式存在跷敬,也就是說讯私,作為Python Module的PyQt,依賴于作為Python Module的sip西傀。而對于SWIG斤寇,一旦自動生成的C++生成完畢,整個流程就不再依賴SWIG了拥褂。

2.2 下載安裝

sip屬于python依賴庫,我們直接使用命令安裝即可.

pip3 install sip

3 配置PyQt5

3.1 什么是PyQt5?

PyQt是python的一個插件庫,通過這個庫我們可以連接qt和python.便捷的使用GUI編程.

3.2 下載安裝

推薦使用統(tǒng)一的命令安裝

pip3 install PyQt5

安裝完畢如圖:

image

Tips:網(wǎng)上那些用pip 去安裝的,反正我是沒安裝成功,一直說找不到對應(yīng)的版本,很大可能是因為我裝了python2.7和python3.6版本的python導(dǎo)致,所以我這里明確安裝到python3.6.x版本的python中.就能順利安裝了.

配置Pycharm

1.首先要確認一下你項目配置的python是不是3.x的版本.如下圖

image

并且確定一下是有含有PyQt5的依賴,一般來說,我們安裝之后都會自動添加依賴,如果你的沒有,點擊左下角+號,搜索PyQt5安裝即可

2.配置GUI設(shè)計工具

image

Tips:
在MAC系統(tǒng)中,QT版本不同,可能Designer.app所在路徑也不同.(由于博主是mac,所以上圖截的是這個路徑)
window系統(tǒng)中,我們第三部需要填入Designer.exe文件路徑

3.設(shè)置ui文件編譯工具

image

上圖中的固定代碼:

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

4.一切大功告成之后差不多是這樣的

image

QT_Designer 是GUI設(shè)計工具,PyGui是將.ui文件編譯成.py文件的腳本工具

編寫第一個PyQt5的GUI程序

1.打開設(shè)計工具:

image

2.創(chuàng)建一個GUI窗口文件

image

3.我們簡單拖動一個label上去

image

然后保存文件到項目的目錄,你會發(fā)現(xiàn)項目中多了一個untitled.ui文件

4.選中該.ui文件,使用PyGui腳本工具編譯成.py文件

image

你會發(fā)現(xiàn)項目目錄中多了一個同名的.py文件.

5.新建一個test.py的測試文件

image

代碼為:

import untitled

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

6.運行test.py文件.

image

大功告成!!!!

Q&A

本篇就講完啦,可能你安裝的過程中會遇到各種各樣的問題,比較每個電腦的軟件版本,型號都不同,但是只要有度娘在,一定能找到答案哦!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末娘锁,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子饺鹃,更是在濱河造成了極大的恐慌莫秆,老刑警劉巖捞稿,帶你破解...
    沈念sama閱讀 206,214評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瓶堕,死亡現(xiàn)場離奇詭異萧求,居然都是意外死亡运翼,警方通過查閱死者的電腦和手機滔岳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評論 2 382
  • 文/潘曉璐 我一進店門痢畜,熙熙樓的掌柜王于貴愁眉苦臉地迎上來澡绩,“玉大人豹爹,你說我怎么就攤上這事责蝠〉辰恚” “怎么了?”我有些...
    開封第一講書人閱讀 152,543評論 0 341
  • 文/不壞的土叔 我叫張陵霜医,是天一觀的道長齿拂。 經(jīng)常有香客問我,道長肴敛,這世上最難降的妖魔是什么署海? 我笑而不...
    開封第一講書人閱讀 55,221評論 1 279
  • 正文 為了忘掉前任吗购,我火速辦了婚禮,結(jié)果婚禮上砸狞,老公的妹妹穿的比我還像新娘捻勉。我一直安慰自己,他們只是感情好刀森,可當(dāng)我...
    茶點故事閱讀 64,224評論 5 371
  • 文/花漫 我一把揭開白布踱启。 她就那樣靜靜地躺著,像睡著了一般研底。 火紅的嫁衣襯著肌膚如雪埠偿。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,007評論 1 284
  • 那天榜晦,我揣著相機與錄音冠蒋,去河邊找鬼。 笑死乾胶,一個胖子當(dāng)著我的面吹牛抖剿,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播胚吁,決...
    沈念sama閱讀 38,313評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼牙躺,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了腕扶?” 一聲冷哼從身側(cè)響起孽拷,我...
    開封第一講書人閱讀 36,956評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎半抱,沒想到半個月后脓恕,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,441評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡窿侈,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,925評論 2 323
  • 正文 我和宋清朗相戀三年炼幔,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片史简。...
    茶點故事閱讀 38,018評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡乃秀,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出圆兵,到底是詐尸還是另有隱情跺讯,我是刑警寧澤,帶...
    沈念sama閱讀 33,685評論 4 322
  • 正文 年R本政府宣布殉农,位于F島的核電站刀脏,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏超凳。R本人自食惡果不足惜愈污,卻給世界環(huán)境...
    茶點故事閱讀 39,234評論 3 307
  • 文/蒙蒙 一耀态、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧暂雹,春花似錦首装、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,240評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至揍魂,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間棚瘟,已是汗流浹背现斋。 一陣腳步聲響...
    開封第一講書人閱讀 31,464評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留偎蘸,地道東北人庄蹋。 一個月前我還...
    沈念sama閱讀 45,467評論 2 352
  • 正文 我出身青樓,卻偏偏與公主長得像迷雪,于是被迫代替她去往敵國和親限书。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,762評論 2 345

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