本書采用以項目為導向的編寫方式,各章通過項目引導、實例、項目實戰(zhàn)介紹Python編程基礎及其相關知識的應用。全書共10章,包括Python概述、Python語言基礎、程序控制結(jié)構(gòu)、Python容器、字符串、正則表達式、函數(shù)、面向?qū)ο缶幊、文件、異常處理結(jié)構(gòu),各章均配備了相關習題。書中各章的項目涉及9個主題,包括turtle繪畫、Pygame游戲開發(fā)、旅游、智能家居、爬蟲、黨史學習、Tkinter圖形軟件開發(fā)、數(shù)據(jù)批量處理、圖像處理,可以幫助讀者深入理解Python語言在各場景中的應用。為方便讀者理解項目代碼,書中以二維碼形式配備了講解微視頻。本書可作為高等院校大數(shù)據(jù)、人工智能相關專業(yè)的教材,也可作為有關專業(yè)技術人員的培訓教材,還可作為編程愛好者及大數(shù)據(jù)、人工智能應用愛好者的參考書。
鄭純軍,教授,大連東軟信息學院軟件學院副院長/大數(shù)據(jù)科學系主任,一直從事大數(shù)據(jù)技術、人工智能、深度學習等方面的科研與教學工作。
第1章 Python概述 1
1.1 項目引導:史努比畫像 1
1.1.1 項目描述 1
1.1.2 項目分析 1
1.1.3 項目實現(xiàn) 1
1.2 認識Python 2
1.2.1 Python語言的發(fā)展歷史 2
1.2.2 Python語言的特點 3
1.3 Python開發(fā)環(huán)境配置 4
1.3.1 Python自帶編輯器IDLE及使用 4
1.3.2 Anaconda開發(fā)環(huán)境安裝及使用 6
1.3.3 PyCharm環(huán)境安裝及使用 12
1.4 項目實戰(zhàn):應聲蟲 22
1.4.1 項目描述 22
1.4.2 項目分析 22
1.4.3 項目實現(xiàn) 22
本章小結(jié) 23
習題1 23
第2章 Python語言基礎 25
2.1 項目引導:教你科學減肥 25
2.1.1 項目描述 25
2.1.2 項目分析 25
2.1.3 項目實現(xiàn) 26
2.2 Python基礎知識 26
2.2.1 Python對象模型 26
實例2.1:我與Python對象的邂逅 27
2.2.2 Python變量 28
2.2.3 數(shù)字 28
2.2.4 字符串 29
2.2.5 布爾型 30
2.2.6 數(shù)據(jù)類型轉(zhuǎn)換 31
實例2.2:數(shù)據(jù)類型大變身 32
2.2.7 輸入與輸出 32
2.2.8 運算符 34
2.2.9 模塊導入與使用 39
實例2.3:一顆紅星 45
2.3 Python代碼規(guī)范 46
2.3.1 縮進 46
2.3.2 標識符的命名 47
2.3.3 留白 47
2.3.4 注釋 47
2.4 Python的__name__屬性 48
2.5 編寫自己的包 49
實例2.4:送你一朵玫瑰花 49
2.6 Python程序打包 52
實例2.5:打包我的愛 54
2.7 項目實戰(zhàn):美麗的星空 55
2.7.1 項目描述 55
2.7.2 項目分析 55
2.7.3 項目實現(xiàn) 55
本章小結(jié) 57
習題2 58
第3章 程序控制結(jié)構(gòu) 59
3.1 項目引導:安靜的小球 59
3.1.1 項目描述 59
3.1.2 項目分析 59
3.1.3 項目實現(xiàn) 60
3.2 程序的基本結(jié)構(gòu) 61
3.2.1 3種控制結(jié)構(gòu) 61
3.2.2 程序流程圖 61
3.3 分支結(jié)構(gòu) 63
3.3.1 單分支結(jié)構(gòu) 63
實例3.1:按鍵檢測 64
3.3.2 雙分支結(jié)構(gòu) 65
實例3.2:有生命的小球 67
3.3.3 多分支結(jié)構(gòu) 69
實例3.3:永不停止的小球 70
3.3.4 分支嵌套結(jié)構(gòu) 73
實例3.4:碰撞檢測 73
3.4 循環(huán)結(jié)構(gòu) 76
3.4.1 遍歷循環(huán):for循環(huán) 76
實例3.5:事件循環(huán)檢測 77
3.4.2 無限循環(huán):while循環(huán) 79
3.4.3 循環(huán)控制關鍵字:break和continue 81
3.5 項目實戰(zhàn):彈彈球 83
3.5.1 項目描述 83
3.5.2 項目分析 83
3.5.3 項目實現(xiàn) 84
本章小結(jié) 86
習題3 86
第4章 Python容器 88
4.1 項目引導:各省份5A景區(qū)信息 88
4.1.1 項目描述 88
4.1.2 項目分析 88
4.1.3 項目實現(xiàn) 88
4.2 列表 89
4.2.1 列表的創(chuàng)建 90
4.2.2 列表元素的獲取 91
4.2.3 列表元素的修改 92
4.2.4 列表元素的添加和刪除 93
4.2.5 列表常用的函數(shù)和運算符 94
4.2.6 列表推導式 99
實例4.1:為你私人定制的旅游計劃 100
4.3 元組 101
4.3.1 元組與列表的區(qū)別 101
4.3.2 元組的創(chuàng)建 102
4.3.3 元組的訪問 103
4.3.4 元組常用的內(nèi)置函數(shù) 105
4.3.5 序列解包 106
4.3.6 生成器推導式 107
實例4.2:尋找你上學那一年獲批的5A景區(qū) 108
4.4 字典 109
4.4.1 字典的創(chuàng)建 110
4.4.2 字典元素的獲取 111
4.4.3 字典元素的添加和修改 112
4.4.4 字典及其元素的刪除 113
實例4.3:給我個地點,我推薦你值得去的景區(qū) 115
4.5 集合 116
4.5.1 集合的創(chuàng)建 116
4.5.2 集合元素的添加 117
4.5.3 集合元素的刪除 117
4.5.4 集合的操作 119
實例4.4:我來告訴你各地5A景區(qū)獲批的年份 121
4.6 項目實戰(zhàn):一邊旅游一邊享受美食 122
4.6.1 項目描述 122
4.6.2 項目分析 122
4.6.3 項目實現(xiàn) 123
本章小結(jié) 123
習題4 124
第5章 字符串 125
5.1 項目引導:開門暗語 125
5.1.1 項目描述 125
5.1.2 項目分析 125
5.1.3 項目實現(xiàn) 125
5.2 字符串編碼與駐留機制 126
5.3 字符串格式化 127
5.4 字符串切片 130
實例5.1:智能家居協(xié)議解析 131
5.5 常用的字符串方法 132
5.6 項目實戰(zhàn):智能家居設備狀態(tài)采集 137
5.6.1 項目描述 137
5.6.2 項目分析 137
5.6.3 項目實現(xiàn) 137
本章小結(jié) 139
習題5 139
第6章 正則表達式 141
6.1 項目引導:制作我的第一個爬蟲 141
6.1.1 項目描述 141
6.1.2 項目分析 141
6.1.3 項目實現(xiàn) 141
6.2 正則表達式語法 142
實例6.1:獲取某網(wǎng)站的鏈接 148
6.3 re模塊的常用方法 149
6.4 使用正則表達式對象 153
實例6.2:獲取某網(wǎng)站更多功能 157
6.5 子模式與match對象 158
6.6 項目實戰(zhàn):我的英、漢互譯 160
6.6.1 項目描述 160
6.6.2 項目分析 160
6.6.3 項目實現(xiàn) 160
本章小結(jié) 161
習題6 161
第7章 函數(shù) 163
7.1 項目引導:中國共產(chǎn)黨歷次全國代表大會歷程回顧 163
7.1.1 項目描述 163
7.1.2 項目分析 163
7.1.3 項目實現(xiàn) 164
7.2 函數(shù)定義與調(diào)用 165
7.3 參數(shù)定義 165
實例7.1:查詢中國共產(chǎn)黨歷次全國代表大會的召開時間 167
7.4 參數(shù)類型 167
7.4.1 必備參數(shù) 168
7.4.2 關鍵字參數(shù) 168
7.4.3 默認參數(shù) 168
7.4.4 不定長參數(shù) 169
7.4.5 參數(shù)傳遞的序列解包 170
實例7.2:查詢多次中國共產(chǎn)黨全國代表大會的召開地點 170
7.5 變量作用域 171
實例7.3:查詢在某地召開中國共產(chǎn)黨全國代表大會的次數(shù) 174
7.6 lambda表達式 175
7.7 項目實戰(zhàn):中國共產(chǎn)黨歷次全國代表大會詳細查詢 175
7.7.1 項目描述 175
7.7.2 項目分析 176
7.7.3 項目實現(xiàn) 176
本章小結(jié) 177
習題7 177
第8章 面向?qū)ο缶幊?179
8.1 項目引導:把大象關到冰箱里共分幾步 179
8.1.1 項目描述 179
8.1.2 項目分析 179
8.1.3 項目實現(xiàn) 180
8.2 面向?qū)ο蠡A 182
8.3 類的定義與使用 183
8.3.1 類的定義 183
實例8.1:百變汽車 186
8.3.2 self參數(shù) 187
8.3.3 類成員與實例成員 188
實例8.2:汽車參數(shù)初探 189
8.3.4 私有成員與公有成員 190
實例8.3:汽車隱私數(shù)據(jù)操作 192
8.4 方法 195
8.5 繼承 197
8.6 重載 199
8.7 封裝 200
8.8 多態(tài) 201
8.9 項目實戰(zhàn):波斯貓的祖先 201
8.9.1 項目描述 201
8.9.2 項目分析 201
8.9.3 項目實現(xiàn) 202
本章小結(jié) 204
習題8 204
第9章 文件 206
9.1 項目引導:批量獲取Excel文件內(nèi)容 206
9.1.1 項目描述 206
9.1.2 項目分析 206
9.1.3 項目實現(xiàn) 207
9.2 文件分類 208
9.3 文件的基本操作 208
實例9.1:匯總金庸的15部武俠小說 212
9.4 文件級操作模塊 212
9.4.1 os模塊 212
9.4.2 os.path模塊 213
實例9.2:批量修改圖片名字 214
9.5 目錄級操作模塊 216
實例9.3:遍歷目錄下的所有圖片 217
9.6 項目實戰(zhàn):批量讀取PDF合同內(nèi)容到Excel中 219
9.6.1 項目描述 219
9.6.2 項目分析 219
9.6.3 項目實現(xiàn) 220
本章小結(jié) 221
習題9 221
第10章 異常處理結(jié)構(gòu) 223
10.1 項目引導:顯示圖片異常初體驗 223
10.1.1 項目描述 223
10.1.2 項目分析 223
10.1.3 項目實現(xiàn) 224
10.2 異常的基本概念 224
10.3 異常處理結(jié)構(gòu) 226
10.3.1 try…except結(jié)構(gòu) 226
實例10.1:彩色圖片轉(zhuǎn)換為黑白圖片 226
10.3.2 try…except…else結(jié)構(gòu) 227
實例10.2:調(diào)整圖片大小 228
10.3.3 帶有多個except的try結(jié)構(gòu) 229
實例10.3:圖片風格過濾 230
10.3.4 try…except…finally結(jié)構(gòu) 232
實例10.4:圖片效果增強 233
10.4 自定義異常類 234
10.5 項目實戰(zhàn):圖片高級應用 235
10.5.1 項目描述 235
10.5.2 項目分析 235
10.5.3 項目實現(xiàn) 235
本章小結(jié) 238
習題10 238
參考文獻 240