隨著信息社會的快速發(fā)展,人們越來越依賴計算機(jī)程序進(jìn)行各種事務(wù)的處理,小到電腦辦公、上網(wǎng)發(fā)郵件、玩游戲,大到進(jìn)行復(fù)雜的科學(xué)計算、性能預(yù)測等,這些都需要人們利用計算機(jī)開發(fā)語言編寫各種各樣的程序,來滿足各種需求,減少工作量。
在眾多的開發(fā)語言中,Python作為開源的高級程序語言,受到越來越多的人的喜歡,并得到人們的認(rèn)可。Python語言的語法簡單,使用方便,用戶不用顧慮細(xì)枝末節(jié),容易上手,對于初學(xué)計算機(jī)編程的人員來說,是值得推薦的計算機(jī)語言。Python有眾多第三方程序包,通過pip命令可以直接安裝使用,利用第三方模塊用Python語言能夠快速搭建各種各樣的程序。
對于Python的可視化編程來說,Python自帶的可視化編程模塊的功能較弱,PyQt是Qt與Python的融合,適合開發(fā)大型復(fù)雜可視化程序。Qt是跨平臺C 圖形可視化界面應(yīng)用開發(fā)框架,自推出以來深受業(yè)界盛贊。PyQt5是Python的一個模塊,它有300多個類,可以運行在所有主要操作系統(tǒng)上。用Python簡潔的語法調(diào)用PyQt的各種可視化控件的類,可以快速搭建用戶的圖形界面。
本書第1~6章詳細(xì)介紹Python語言的基本知識,適合沒有Python基礎(chǔ)的人員使用,第7~14章詳細(xì)介紹用PyQt5進(jìn)行界面開發(fā)的框架和各種控件的使用方法。其中,第1章介紹如何搭建Python和PyQt的開發(fā)環(huán)境; 第2章介紹Python的變量、賦值、數(shù)據(jù)類型和表達(dá)式; 第3章介紹Python的分支和循環(huán)結(jié)構(gòu); 第4章介紹列表、元組、字典、集合和字符串等數(shù)據(jù)結(jié)構(gòu); 第5章介紹自定義函數(shù)、類、模塊和包方面的內(nèi)容; 第6章介紹異常處理、Python的讀寫文件和操作文件的功能以及Excel文檔的讀寫功能; 第7章介紹PyQt5的可視化編程框架、信號和槽的機(jī)制、在Qt Designer中進(jìn)行界面設(shè)計以及窗體文件和資源文件轉(zhuǎn)成Python的py文件的方法; 第8章介紹一些基礎(chǔ)類、常用控件、容器控件和布局控件的方法、信號和槽函數(shù); 第9章介紹窗口、主窗口和對話框方面的內(nèi)容; 第10章介紹PyQt的事件及事件處理方面的內(nèi)容; 第11章介紹基于項和模型的控件,基于項和模型的控件屬于高級控件; 第12章介紹QPainter和Graphics/View兩種繪圖功能; 第13章介紹PyQt5讀寫文本文件和二進(jìn)制文件及文件操作方面的內(nèi)容; 第14章介紹視頻和音頻播放、攝像頭拍照和錄音方面的內(nèi)容。本書在寫作時,Python的版本是3.9.0,PyQt的版本是5.15.1,由于開發(fā)語言仍在不斷發(fā)展中,讀者在使用本書的時候,Python和PyQt很可能發(fā)展到更高的版本,由于軟件一般都有向下兼容的特點,因此本書所述內(nèi)容不會影響正常的使用。本書在主要知識點上配有應(yīng)用實例,這些應(yīng)用實例可以起到畫龍點睛的作用,請讀者掃描下面的二維碼下載本書實例的源代碼。
本書由北京諾思多維科技有限公司組織編寫,我們可以完成軟件開發(fā)、CAE模擬(振動噪聲、流體動力學(xué)、多體動力學(xué)、疲勞、碰撞、熱、復(fù)合材料、有限元非線性計算、振動噪聲測試、多學(xué)科優(yōu)化等)和CAE/CAD二次開發(fā)方面的內(nèi)容。由于受作者水平與時間的限制,書中疏漏和錯誤在所難免,敬請廣大讀者批評指正。在使用本書的過程中,如有問題可通過郵箱forengineer@126.com與本書作者聯(lián)系。
掃描二維碼,下載本書應(yīng)用實例的源代碼。
作者2020年10月
Python基礎(chǔ)與PyQt可視化編程詳解_源代碼及所需文件.zip
第1章Python編程環(huán)境
1.1Python介紹
1.1.1程序與程序語言
1.1.2Python編程語言
1.2Python編程環(huán)境的建立
1.2.1安裝Python
1.2.2安裝PyQt5
1.2.3安裝Qt
1.2.4安裝PyCharm
1.3Python開發(fā)環(huán)境使用基礎(chǔ)
1.3.1Python自帶集成開發(fā)環(huán)境
1.3.2PyCharm集成開發(fā)環(huán)境
第2章Python編程基礎(chǔ)
2.1變量與賦值語句
2.1.1變量和賦值的意義
2.1.2變量的定義
2.1.3賦值語句
2.2Python中的數(shù)據(jù)類型
2.2.1數(shù)據(jù)類型
2.2.2數(shù)據(jù)類型的轉(zhuǎn)換
2.2.3字符串中的轉(zhuǎn)義符
2.3表達(dá)式
2.3.1數(shù)值表達(dá)式
2.3.2邏輯表達(dá)式
2.3.3運算符的優(yōu)先級
2.4Python編程的注意事項
2.4.1空行與注釋
2.4.2縮進(jìn)
2.4.3續(xù)行
2.5Python中常用的一些函數(shù)
2.5.1輸入函數(shù)和輸出函數(shù)
2.5.2range( )函數(shù)
2.5.3隨機(jī)函數(shù)
第3章分支和循環(huán)結(jié)構(gòu)
3.1分支結(jié)構(gòu)
3.1.1if分支結(jié)構(gòu)
3.1.2分支語句的嵌套
3.2循環(huán)結(jié)構(gòu)
3.2.1for循環(huán)結(jié)構(gòu)
3.2.2while循環(huán)結(jié)構(gòu)
3.2.3循環(huán)體的嵌套
3.2.4continue和break語句
第4章Python的數(shù)據(jù)結(jié)構(gòu)
4.1列表
4.1.1創(chuàng)建列表
4.1.2列表元素的索引和輸出
4.1.3列表的編輯
4.2元組
4.2.1創(chuàng)建元組
4.2.2元組元素的索引和輸出
4.3字典
4.3.1創(chuàng)建字典
4.3.2字典的編輯
4.4集合
4.4.1創(chuàng)建集合
4.4.2集合的編輯
4.4.3集合的邏輯運算
4.4.4集合的元素運算
4.5字符串
4.5.1字符串的索引和輸出
4.5.2字符串的處理
4.5.3格式化字符串
第5章自定義函數(shù)、類和模塊
5.1自定義函數(shù)
5.1.1自定義函數(shù)的格式
5.1.2函數(shù)參數(shù)
5.1.3函數(shù)的返回值
5.1.4函數(shù)的局部變量
5.1.5匿名函數(shù)lambda
5.1.6函數(shù)的遞歸調(diào)用
5.2類和對象
5.2.1類和對象介紹
5.2.2類的定義和實例
5.2.3實例屬性和類屬性
5.2.4類中的函數(shù)
5.2.5屬性和方法的私密性
5.2.6類的繼承
5.2.7類的其他操作
5.3模塊和包
5.3.1模塊的使用
5.3.2模塊空間與主程序
5.3.3包的使用
5.3.4枚舉模塊
5.3.5sys模塊
第6章異常處理和文件操作
6.1異常信息和異常處理
6.1.1異常信息
6.1.2被動異常的處理
6.1.3主動異常的處理
6.1.4異常的嵌套
6.2文件的讀寫
6.2.1文件的打開與關(guān)閉
6.2.2讀取數(shù)據(jù)
6.2.3寫入數(shù)據(jù)
6.3文件和路徑操作
6.4Excel文件的讀寫
6.4.1openpyxl的基本結(jié)構(gòu)
6.4.2創(chuàng)建工作簿和工作表格實例對象
6.4.3工作表格對象的操作
6.4.4單元格的操作
6.4.5繪制數(shù)據(jù)圖表
第7章PyQt5可視化編程基礎(chǔ)
7.1PyQt5窗口運行方法
7.1.1PyQt5的主要模塊
7.1.2窗口初始化類
7.1.3窗口的創(chuàng)建
7.2PyQt5可視化編程架構(gòu)
7.2.1界面用函數(shù)來定義
7.2.2界面用類來定義
7.2.3界面用模塊來定義
7.2.4界面與邏輯的分離
7.3用Qt Designer設(shè)計界面
7.3.1窗口界面設(shè)計
7.3.2ui文件編譯成py文件
7.3.3ui文件轉(zhuǎn)換后的編程
7.4信號與槽
7.4.1內(nèi)置信號與內(nèi)置槽的連接
7.4.2內(nèi)置信號與自定義槽函數(shù)
7.4.3自定義信號
7.5控件的關(guān)系
7.5.1控件的布局
7.5.2Tab鍵順序
7.5.3伙伴關(guān)系
7.6資源文件
7.6.1資源文件的創(chuàng)建和使用
7.6.2qrc文件編譯成py文件
7.7py文件的編譯
第8章PyQt5常用控件
8.1可視化編程常用類
8.1.1字體類
8.1.2顏色類
8.1.3調(diào)色板類
8.1.4坐標(biāo)點類
8.1.5尺寸類
8.1.6矩形框類
8.1.7圖像類
8.1.8圖標(biāo)類
8.1.9光標(biāo)類
8.2常用控件及用法
8.2.1標(biāo)簽控件
8.2.2單行文本控件
8.2.3多行文本控件
8.2.4多行純文本控件
8.2.5數(shù)字輸入控件
8.2.6下拉列表框控件
8.2.7字體下拉列表框控件
8.2.8單擊按鈕控件
8.2.9命令連接按鈕控件
8.2.10復(fù)選框按鈕控件
8.2.11單選按鈕控件
8.2.12滾動條和滑塊控件
8.2.13進(jìn)度條控件
8.3容器控件及用法
8.3.1分組框控件
8.3.2滾動區(qū)控件
8.3.3切換卡控件
8.3.4控件?丶
8.3.5工具箱控件
8.3.6框架控件
8.4日期時間類及控件
8.4.1日歷
8.4.2日期類
8.4.3時間類
8.4.4日期時間類
8.4.5定時器
8.4.6日歷控件
8.4.7液晶顯示控件
8.4.8日期時間控件
8.5布局控件及用法
8.5.1表單布局
8.5.2水平和豎直布局
8.5.3格柵布局
8.5.4分割器控件
第9章窗口和對話框
9.1QWidget窗口
9.1.1頂層窗口
9.1.2QWidget獨立窗口
9.2菜單和動作
9.2.1菜單欄
9.2.2菜單
9.2.3動作
9.3工具欄和狀態(tài)欄
9.3.1工具欄
9.3.2工具按鈕控件
9.3.3狀態(tài)欄
9.4QMainWindow主窗口
9.4.1主窗口
9.4.2?靠丶
9.4.3多文檔和子窗口
9.4.4在Qt Designer中建立主窗口
9.5對話框
9.5.1自定義對話框
9.5.2字體對話框
9.5.3顏色對話框
9.5.4文件對話框
9.5.5輸入對話框
9.5.6信息對話框
9.5.7錯誤信息對話框
9.5.8進(jìn)度對話框
9.5.9向?qū)Ш拖驅(qū)ы?/p>
9.6窗口風(fēng)格和樣式表
9.6.1窗口風(fēng)格
9.6.2樣式表
第10章事件及處理
10.1事件的類型
10.1.1事件的概念
10.1.2QEvent類
10.1.3event()函數(shù)
10.2鼠標(biāo)和鍵盤事件的類
10.2.1鼠標(biāo)按鍵事件類
10.2.2鍵盤事件類
10.2.3鼠標(biāo)拖放事件類
10.2.4上下文菜單
10.2.5剪切板
10.3窗口常用事件
10.3.1顯示和隱藏事件
10.3.2縮放和移動事件
10.3.3繪制事件
10.3.4進(jìn)入和離開事件
10.3.5獲得和失去焦點事件
10.3.6關(guān)閉事件
10.3.7計時器事件
10.4事件過濾和自定義事件
10.4.1事件的過濾
10.4.2自定義事件
第11章基于項和模型的控件
11.1基于項的控件
11.1.1列表控件及其項
11.1.2表格控件及其項
11.1.3樹結(jié)構(gòu)控件及其項
11.2數(shù)據(jù)模型基礎(chǔ)
11.2.1Model/View機(jī)制
11.2.2數(shù)據(jù)模型的種類
11.2.3數(shù)據(jù)項的索引
11.2.4QAbstractItemModel
11.3數(shù)據(jù)模型和視圖控件
11.3.1文本列表模型和列表視圖控件
11.3.2文件系統(tǒng)模型和樹視圖控件
11.3.3標(biāo)準(zhǔn)數(shù)據(jù)模型和表格視圖控件
11.4選擇模型和代理控件
11.4.1選擇模型
11.4.2代理控件
第12章繪制圖形
12.1QPainter繪圖
12.1.1QPainter類
12.1.2鋼筆
12.1.3畫刷
12.1.4漸變色
12.1.5繪制幾何形狀
12.1.6繪制文本
12.1.7繪圖路徑
12.1.8填充
12.1.9繪制圖像
12.1.10裁剪區(qū)域
12.1.11坐標(biāo)變換
12.1.12視口和窗口
12.1.13圖形合成
12.2Graphics/View繪圖
12.2.1Graphics/View繪圖框架介紹
12.2.2Graphics/View坐標(biāo)系統(tǒng)
12.2.3視圖控件
12.2.4場景
12.2.5圖項
12.2.6標(biāo)準(zhǔn)圖項
12.2.7圖形控件和代理控件
12.2.8圖形控件的布局
12.2.9圖形效果
第13章文件操作
13.1文件的讀寫
13.1.1QIODevice
13.1.2字節(jié)數(shù)組
13.1.3QFile
13.1.4文本流
13.1.5數(shù)據(jù)流
13.1.6QTemporaryFile
13.1.7QSaveFile
13.1.8QBuffer
13.2文件操作
13.2.1文件信息
13.2.2路徑管理
13.2.3文件監(jiān)視器
第14章音頻和視頻
14.1音頻和視頻的播放
14.1.1QMediaPlayer播放器
14.1.2QMediaContent與QUrl
14.1.3QMediaPlaylist媒體列表
14.1.4QVideoWidget控件
14.1.5QGraphicsVideoItem
14.1.6QSoundEffect與QSound
14.1.7QMovie播放動畫
14.2攝像頭和拍照
14.2.1QCamera攝像頭
14.2.2QCameraInfo與QCameraViewfinderSettings
14.2.3QCameraImageCapture
14.3錄制音頻
14.3.1QAudioRecorder錄制音頻信號
14.3.2QAudioInput錄制原生音頻數(shù)據(jù)
14.3.3QAudioOutput播放原生音頻數(shù)據(jù)