Python實(shí)用教程(含典型案例視頻分析)
定 價(jià):69 元
叢書名:高等學(xué)校計(jì)算機(jī)教材
- 作者:鄭阿奇
- 出版時(shí)間:2019/3/1
- ISBN:9787121361616
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP311.561
- 頁碼:400
- 紙張:
- 版次:01
- 開本:16開
本書共五個(gè)部分。第一部分(前10章)為基礎(chǔ)篇,介紹Python概述、語言基礎(chǔ)、分支和循環(huán)控制、序列(列表、元組、集合、字典)、數(shù)組和矩陣、字符串和正則表達(dá)式、函數(shù)和模塊、面向?qū)ο缶幊、文件操作和異常處理等?nèi)容。第二部分(后10章)為應(yīng)用篇,介紹二維圖表、三維圖像、聲頻、視頻;Python操作的數(shù)據(jù)庫介紹MySQL、PostgreSQL、SQL Server、Oracle、SQLite、MongoDB等內(nèi)容均完成了應(yīng)用實(shí)例;Office組件介紹Word、Excel和PowerPoint的內(nèi)容,并有綜合應(yīng)用實(shí)例;介紹在C++中如何使用Python,以及在Python中如何使用C++。第三部分為實(shí)驗(yàn)。第四部分為習(xí)題。第五部分為附錄,提供Python調(diào)試及其實(shí)例。本書將命令和編程結(jié)合,編程和常用算法結(jié)合,學(xué)習(xí)和應(yīng)用結(jié)合;配套教程、習(xí)題、實(shí)驗(yàn)等,并各有側(cè)重、相互配合;提供配套教學(xué)視頻,介紹和分析Python實(shí)例,可更好地理解Python及其應(yīng)用。同時(shí),通過網(wǎng)絡(luò)配套提供所有實(shí)例源程序(.py)及其工程、數(shù)據(jù)庫文件、教學(xué)課件,以方便教學(xué)和學(xué)生模仿。本書既可作為大學(xué)本科和高職高專院校有關(guān)課程教材,也可作為Python學(xué)習(xí)、培訓(xùn)講義。
鄭阿奇,南京師范大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,副教授,東南大學(xué)本科,曾任計(jì)算機(jī)軟件系主任,獲選南京師范大學(xué)教學(xué)名師培養(yǎng)人選。主編5套計(jì)算機(jī)系列教材,獲教育部優(yōu)秀教材二等獎(jiǎng)、電子部優(yōu)秀教材二等獎(jiǎng)、兩次獲江蘇省優(yōu)秀教學(xué)成果二等獎(jiǎng)、江蘇省暢銷圖書編輯二等獎(jiǎng)、全國高校出版社優(yōu)秀暢銷書二等獎(jiǎng)、兩次獲南京師范大學(xué)優(yōu)秀教學(xué)成果一等獎(jiǎng)、南京師范大學(xué)精品教材一等獎(jiǎng)。參加主持國家八六三計(jì)劃子項(xiàng)目、江蘇省科技開發(fā)項(xiàng)目,主持南京市科技開發(fā)項(xiàng)目、泰州市科委項(xiàng)目、金陵石化公司項(xiàng)目,獲江蘇省優(yōu)秀軟件獎(jiǎng),江蘇省科技進(jìn)步獎(jiǎng)、南京市創(chuàng)新成果獎(jiǎng)。獲國家發(fā)明專利和實(shí)用新型專利20多個(gè)。
目 錄
第一部分 基 礎(chǔ) 篇
第1章 Python,掀起你的蓋頭來 1
1.1 Python簡介 1
1.2 安裝Python及其擴(kuò)展庫 2
1.2.1 安裝Python 2
1.2.2 Python集成開發(fā)環(huán)境—IDLE 5
1.3 PyCharm開發(fā)環(huán)境的安裝和設(shè)置 5
1.3.1 PyCharm的安裝 6
1.3.2 PyCharm程序設(shè)計(jì)環(huán)境 9
1.3.3 一個(gè)簡單的程序?qū)嵗?11
1.4 擴(kuò)展庫的安裝和使用 13
1.4.1 擴(kuò)展庫的安裝 13
1.4.2 擴(kuò)展庫的導(dǎo)入和使用 15
1.4.3 編程環(huán)境同步 16
1.5 Python說明 16
1.5.1 程序語法規(guī)則 16
1.5.2 Python語言的執(zhí)行 19
1.5.3 name屬性的作用 19
第2章 Python雖神,語言基礎(chǔ)并不特別 20
2.1 數(shù)據(jù)類型 20
2.1.1 數(shù)值 20
2.1.2 字符串與字節(jié)串 22
2.1.3 數(shù)據(jù)類型轉(zhuǎn)換 23
2.1.4 類型變量 25
2.2 運(yùn)算符與表達(dá)式 26
2.2.1 算術(shù)運(yùn)算符及其表達(dá)式 26
2.2.2 關(guān)系運(yùn)算符及其表達(dá)式 27
2.2.3 位運(yùn)算符及其表達(dá)式 27
2.2.4 邏輯運(yùn)算符及其表達(dá)式 28
2.2.5 字符串基本運(yùn)算及其表達(dá)式 29
2.2.6 賦值運(yùn)算符 30
2.2.7 與同性判斷運(yùn)算符 31
2.3 基本輸入和輸出 31
2.3.1 輸出到屏幕 31
2.3.2 鍵盤輸入 33
2.4 綜合應(yīng)用實(shí)例 34
第3章 這樣就能控制:分支和循環(huán) 35
3.1 選擇結(jié)構(gòu) 35
3.1.1 if語句的三種形式 35
3.1.2 if語句的嵌套 38
3.2 循環(huán)結(jié)構(gòu) 38
3.2.1 循環(huán)語句 38
3.2.2 循環(huán)控制語句 40
3.2.3 循環(huán)嵌套 41
3.3 范圍和迭代器 42
3.3.1 范圍 42
3.3.2 迭代器 43
3.4 綜合應(yīng)用舉例 43
第4章 序列是什么:列元字集 46
4.1 列表:list 46
4.1.1 創(chuàng)建列表 46
4.1.2 索引和切片 47
4.1.3 列表的基本操作 48
4.1.4 列表方法 49
4.1.5 列表推導(dǎo)式 52
4.2 元組:tuple 54
4.2.1 元組的基本操作 54
4.2.2 生成器推導(dǎo)式 55
4.3 集合:set 56
4.3.1 集合的創(chuàng)建與訪問 56
4.3.2 集合的基本操作符 57
4.4 字典:dict 59
4.4.1 字典的基本操作符 59
4.4.2 字典方法 60
4.5 序列 62
4.5.1 序列間的轉(zhuǎn)換 62
4.5.2 常用內(nèi)置函數(shù) 64
4.6 綜合應(yīng)用實(shí)例 67
第5章 又是數(shù)組,又是矩陣 70
5.1 數(shù)組 70
5.1.1 創(chuàng)建數(shù)組 70
5.1.2 元素的增加、查詢、修改、
刪除 71
5.1.3 分割切片 73
5.1.4 運(yùn)算 73
5.1.5 條件函數(shù) 74
5.2 矩陣 75
5.2.1 創(chuàng)建矩陣 75
5.2.2 常用的矩陣運(yùn)算 76
5.2.3 常用的矩陣求值 77
5.2.4 矩陣的分隔和合并 78
5.2.5 矩陣和數(shù)組 79
5.3 array模塊數(shù)據(jù)庫基本概念 80
第6章 雖是字符串,還要正則表達(dá)式 83
6.1 基本說明 83
6.1.1 字符串編碼 83
6.1.2 轉(zhuǎn)義字符 84
6.1.3 字符串常量 85
6.2 字符串格式化 86
6.2.1 用%符號(hào)進(jìn)行格式化 86
6.2.2 用format()方法格式化 87
6.2.3 格式化的字符串常量 88
6.2.4 用template模板格式化 89
6.3 字符串常用操作 89
6.3.1 字符串創(chuàng)建和訪問 89
6.3.2 字符串操作和判斷 91
6.3.3 字符串排版和切片 93
6.3.4 綜合應(yīng)用實(shí)例 93
6.4 正則表達(dá)式 94
6.4.1 正則表達(dá)式元字符 94
6.4.2 正則表達(dá)式模塊re 95
6.4.3 match對(duì)象和正則表達(dá)式子
模式 98
6.4.4 綜合應(yīng)用實(shí)例 98
第7章 代碼重用和共享:函數(shù)和模塊 100
7.1 Python程序結(jié)構(gòu) 100
7.2 用戶編寫函數(shù) 101
7.2.1 函數(shù)定義與調(diào)用 101
7.2.2 函數(shù)嵌套定義 102
7.2.3 修飾器 102
7.2.4 列表推導(dǎo)式 103
7.3 參數(shù)傳遞 103
7.3.1 定長參數(shù) 104
7.3.2 可變長度參數(shù) 105
7.3.3 序列解包 105
7.4 函數(shù)嵌套與遞歸 106
7.5 變量作用域 107
7.5.1 局部變量 107
7.5.2 全局變量 108
7.6 lambda表達(dá)式 108
7.7 成器函數(shù)設(shè)計(jì) 110
7.8 模塊 111
7.9 命名空間 112
7.9.1 命名空間的分類 112
7.9.2 命名空間的規(guī)則 113
7.10 包 113
7.10.1 包介紹 114
7.10.2 包管理工具 114
7.11 綜合應(yīng)用實(shí)例 115
第8章 對(duì)象需要談一談:面向?qū)ο缶幊?117
8.1 類 117
8.1.1 基本概念 117
8.1.2 類的定義與使用 118
8.1.3 數(shù)據(jù)成員 119
8.1.4 方法 120
8.1.5 屬性 122
8.1.6 動(dòng)態(tài)性 123
8.2 繼承、多態(tài) 124
8.2.1 繼承 124
8.2.2 多重繼承 125
8.2.3 多態(tài) 126
8.3 運(yùn)算符重載 127
第9章 信息永久保存:文件操作 129
9.1 文件及其操作 129
9.1.1 文件類型 129
9.1.2 文件的打開和關(guān)閉 130
9.2 文件操作 131
9.2.1 寫入方法 131
9.2.2 讀取操作方法 132
9.2.3 定位與移動(dòng) 132
9.2.4 文件設(shè)備 133
9.2.5 上下文管理語句 134
9.3 序列化和反序列化 134
9.4 文件和文件夾的操作 135
9.4.1 文件操作 135
9.4.2 目錄操作 135
第10章 野馬不會(huì)脫韁:異常處理 137
10.1 異常的產(chǎn)生 137
10.2 內(nèi)置異常類 137
10.3 異常處理結(jié)構(gòu) 138
10.4 拋出異常 142
10.5 自定義異常 143
10.6 斷言語句 143
第二部分 應(yīng) 用 篇
第11章 拿起一支筆畫來畫去:二維圖表
實(shí)例 145
11.1 單幅圖表:繪制螺旋曲線實(shí)例 145
11.1.1 背景知識(shí) 145
11.1.2 實(shí)現(xiàn)原理 146
11.1.3 程序及分析 147
11.2 繪制多軸圖表:展示初等函數(shù)實(shí)例 148
11.2.1 背景知識(shí) 148
11.2.2 實(shí)現(xiàn)原理 149
11.2.3 程序及分析 150
11.3 定制表軸刻度:演示擺線形成實(shí)例 152
11.3.1 背景知識(shí) 152
11.3.2 實(shí)現(xiàn)原理 153
11.3.3 程序及分析 153
第12章 為什么這么快:數(shù)值處理及實(shí)例 156
12.1 數(shù)組的創(chuàng)建 156
12.1.1 NumPy數(shù)組函數(shù) 156
12.1.2 數(shù)組維度設(shè)定 157
12.1.3 函數(shù)生成數(shù)組 158
12.2 數(shù)組的存取 159
12.2.1 基本存取方法 159
12.2.2 多維數(shù)組的存取 160
12.2.3 結(jié)構(gòu)數(shù)組的存取:讀取修改
學(xué)生成績 163
12.3 ufunc函數(shù) 165
12.3.1 內(nèi)置ufunc函數(shù) 165
12.3.2 自定義ufunc函數(shù):提取任
意范圍素?cái)?shù) 166
12.3.3 ufunc函數(shù)的性能 167
12.4 綜合應(yīng)用實(shí)例:斐波那契法計(jì)算
黃金分割數(shù) 169
12.4.1 背景知識(shí) 169
12.4.2 算法設(shè)計(jì) 170
12.4.3 編程實(shí)現(xiàn) 172
第13章 進(jìn)入立體世界:三維可視化實(shí)例 176
13.1 3D繪圖入門:繪制圓柱體 176
13.1.1 基本概念 176
13.1.2 繪圖流程 177
13.1.3 VTK繪制圓柱體 179
13.1.4 TVTK繪制圓柱體 180
13.2 TVTK繪圖進(jìn)階 182
13.2.1 流水線瀏覽器:改變圓柱
外觀 182
13.2.2 多實(shí)體場景:繪制多種幾
何體 185
13.3 使用第三方模具:文件載入
“胡巴” 187
13.3.1 背景知識(shí) 187
13.3.2 程序?qū)崿F(xiàn) 188
13.3.3 控制照相機(jī) 190
第14章 精彩紛呈:可視化科學(xué)計(jì)算實(shí)例 192
14.1 SciPy科學(xué)計(jì)算功能 192
14.1.1 數(shù)據(jù)擬合 192
14.1.2 插值優(yōu)化 193
14.1.3 信號(hào)處理 194
14.2 Mayavi可視化應(yīng)用 195
14.2.1 繪制空間曲面:電子衍射
圖案 195
14.2.2 復(fù)雜三維圖形:模擬穿越
蟲洞 198
14.2.3 標(biāo)量場可視化:地月系引
力場 201
14.3 綜合應(yīng)用實(shí)例:蝴蝶效應(yīng)演示 203
14.3.1 背景知識(shí) 203
14.3.2 實(shí)現(xiàn)原理 204
14.3.3 程序演示 204
第15章 流行數(shù)據(jù)庫世界:操作實(shí)例 208
15.1 基本原理 208
15.1.1 Python訪問數(shù)據(jù)庫原理 208
15.1.2 數(shù)據(jù)庫操作的一般步驟 210
15.2 Python操作MySQL 213
15.2.1 環(huán)境安裝 214
15.2.2 程序及分析 215
15.3 Python操作SQLite 217
15.3.1 SQLite簡介 217
15.3.2 程序及分析 217
15.4 Python操作MongoDB 219
15.4.1 環(huán)境安裝 219
15.4.2 程序及分析 221
15.5 Python操作PostgreSQL 223
15.5.1 環(huán)境安裝 223
15.5.2 程序及分析 225
15.6 Python操作其他數(shù)據(jù)庫 228
15.6.1 Python操作SQL Server 228
15.6.2 Python操作Oracle 230
第16章 窗口從何而來:界面設(shè)計(jì)實(shí)例 234
16.1 界面編程入門 234
16.1.1 編程的一般步驟 234
16.1.2 第一個(gè)Tkinter程序 235
16.1.3 界面的事件響應(yīng) 236
16.2 窗體基本控件 237
16.2.1 Tkinter控件概述 237
16.2.2 標(biāo)簽 238
16.2.3 復(fù)選框 238
16.2.4 單選按鈕 239
16.2.5 標(biāo)簽組框 240
16.2.6 輸入框 241
16.2.7 列表框與滾動(dòng)條 243
16.3 綜合應(yīng)用實(shí)例:人員信息管理系統(tǒng) 244
16.3.1 數(shù)據(jù)庫準(zhǔn)備 244
16.3.2 系統(tǒng)實(shí)現(xiàn) 245
16.3.3 功能演示 248
16.4 用Qt設(shè)計(jì)Python程序界面 250
16.4.1 Qt簡介及功能展示 250
16.4.2 用Qt設(shè)計(jì)圖形界面 252
16.4.3 Qt界面向Python轉(zhuǎn)化 256
16.4.4 Python添加功能邏輯 257
16.5 Tkinter界面呈現(xiàn)MatPlotLib圖表 260
第17章 網(wǎng)絡(luò)爬蟲,爬來爬去實(shí)例 262
17.1 爬蟲概述 262
17.1.1 權(quán)限及試驗(yàn)用網(wǎng)站 262
17.1.2 爬蟲工作的基本流程 263
17.2 基于Requests的爬蟲 266
17.2.1 環(huán)境安裝 267
17.2.2 程序?qū)崿F(xiàn) 268
17.3 Python內(nèi)置Urllib爬蟲庫 269
17.3.1 獲取導(dǎo)航欄標(biāo)題 270
17.3.2 搜索特定關(guān)鍵詞 271
17.3.3 抓取頁面上的圖片 273
17.4 綜合應(yīng)用實(shí)例:爬蟲獲取天氣預(yù)報(bào) 275
17.4.1 定位資源路徑 275
17.4.2 程序?qū)崿F(xiàn) 277
第18章 到Office晃一晃:操作Excel/Word/
PowerPoint實(shí)例 279
18.1 Python操作Excel 279
18.1.1 基本操作 279
18.1.2 單元格操作與計(jì)算:統(tǒng)計(jì)
高考錄取人數(shù)與錄取率 280
18.2 Python操作Word 282
18.2.1 環(huán)境安裝 282
18.2.2 基本讀/寫 283
18.2.3 載入文檔表格:讀取歷年
高考統(tǒng)計(jì)信息 284
18.2.4 輸出文檔表格:2013—2017
年高考信息統(tǒng)計(jì)表 286
18.3 Python操作PowerPoint 287
18.3.1 環(huán)境安裝 287
18.3.2 第一張幻燈片 289
18.3.3 讀取幻燈片中的表格:2013—
2017年高考人數(shù)和錄取率 290
18.3.4 繪制柱狀圖表:畫出2008—
2012年高考報(bào)名人數(shù)柱
狀圖 292
18.4 綜合應(yīng)用實(shí)例:統(tǒng)計(jì)并演示全國
高等教育普及率 293
18.4.1 原始Word數(shù)據(jù)準(zhǔn)備 293
18.4.2 數(shù)據(jù)轉(zhuǎn)存Excel計(jì)算 294
18.4.3 輸出至PowerPoint演示 295
第19章 圖像可以這樣變化:圖像處理實(shí)例 298
19.1 Python圖片基本處理 298
19.1.1 三種處理方式 298
19.1.2 模式轉(zhuǎn)換:彩色照片畫面
作舊 300
19.1.3 增強(qiáng)與濾波:海底攝影照片
美化 302
19.2 多圖合成技術(shù) 304
19.2.1 圖像合成的兩種方式 304
19.2.2 插值合成:雜技演員動(dòng)作
合成 305
19.2.3 通道合成:人魚美照融入
背景 306
19.3 圖像截取與抓拍 308
19.3.1 圖像截取:人物肖像輪廓
提取 308
19.3.2 畫面抓拍:藝術(shù)體操表演
抓拍 310
19.4 綜合應(yīng)用實(shí)例:長白山天池水怪
研究 313
19.4.1 背景知識(shí) 313
19.4.2 處理水怪的影像 315
19.4.3 觀察、研究及結(jié)論 316
第20章 其他也精彩:音頻、動(dòng)畫、視頻與
C++實(shí)例 318
20.1 音頻處理:流行歌曲串燒 318
20.1.1 歌曲介紹 318
20.1.2 Python音頻處理模塊 319
20.1.3 用Python實(shí)現(xiàn)歌曲串燒 319
20.1.4 合成的新曲 322
20.2 動(dòng)畫制作:阿基米德螺線的生成
演示 323
20.2.1 動(dòng)畫相關(guān)組件 323
20.2.2 程序?qū)崿F(xiàn) 323
20.2.3 演示效果 324
20.3 視頻處理:海洋館潛水員表演
視頻剪輯 324
20.3.1 Python視頻模塊 325
20.3.2 本例視頻處理需求 325
20.3.3 格式轉(zhuǎn)換 326
20.3.4 冗余幀采樣 328
20.3.5 必要幀處理 330
20.3.6 特殊處理 331
20.3.7 制作片頭和片尾 333
20.3.8 合成作品 335
20.4 Python與C++互操作 336
20.4.1 C++調(diào)用Python模塊功能 337
20.4.2 Python使用C++的DLL庫 341
第三部分 實(shí) 驗(yàn)
實(shí)驗(yàn)1 345
實(shí)驗(yàn)2 346
實(shí)驗(yàn)3 346
實(shí)驗(yàn)4 347
實(shí)驗(yàn)5 348
實(shí)驗(yàn)6 349
實(shí)驗(yàn)7 350
實(shí)驗(yàn)8 351
實(shí)驗(yàn)9 352
實(shí)驗(yàn)10 353
實(shí)驗(yàn)11 353
實(shí)驗(yàn)12 354
實(shí)驗(yàn)13 355
實(shí)驗(yàn)14 357
實(shí)驗(yàn)15 358
實(shí)驗(yàn)16 359
實(shí)驗(yàn)17 360
實(shí)驗(yàn)18 361
實(shí)驗(yàn)19 362
實(shí)驗(yàn)20 362
第四部分 習(xí) 題
習(xí)題1 364
習(xí)題2 365
習(xí)題3 366
習(xí)題4 367
習(xí)題5 368
習(xí)題6 369
習(xí)題7 370
習(xí)題8 371
習(xí)題9 372
習(xí)題10 373
習(xí)題11 374
習(xí)題12 375
習(xí)題13 376
習(xí)題14 377
習(xí)題15 378
習(xí)題16 379
習(xí)題17 380
習(xí)題18 381
習(xí)題19 382
習(xí)題20 384
第五部分 附 錄
附錄A 磨刀不誤砍材工—Pycharm環(huán)境調(diào)試
Python程序 385
A.1 Python程序語法錯(cuò)誤標(biāo)識(shí) 385
A.2 Python程序調(diào)試基本方法 387
A.3 Python實(shí)例程序運(yùn)行調(diào)試 387