Python程序設(shè)計——從基礎(chǔ)入門到實(shí)戰(zhàn)應(yīng)用(微課版)(第2版)
定 價:69.8 元
當(dāng)前圖書已被 1 所學(xué)校薦購過!
查看明細(xì)
- 作者:王雷春
- 出版時間:2025/9/1
- ISBN:9787121510458
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP312.8
- 頁碼:320
- 紙張:
- 版次:01
- 開本:16開
本書以Python作為實(shí)現(xiàn)工具,介紹程序設(shè)計的基本思想和方法,培養(yǎng)學(xué)生利用Python解決實(shí)際問題的能力。本書分為兩部分:教學(xué)篇和實(shí)驗(yàn)篇。教學(xué)篇共15章:第1章介紹Python基本知識與概念,開發(fā)環(huán)境,程序開發(fā)步驟,程序結(jié)構(gòu)與編碼規(guī)范,輸入、輸出函數(shù)等;第2章介紹數(shù)據(jù)類型、常量和變量、運(yùn)算符、常用特殊內(nèi)置函數(shù)、程序調(diào)試等;第3章介紹程序設(shè)計結(jié)構(gòu),包括順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu);第4章介紹組合數(shù)據(jù)的使用方法,包括列表、元組、字典和集合;第5章介紹函數(shù)的定義和調(diào)用、參數(shù)類型、特殊函數(shù)、裝飾器及變量作用域等;第6章介紹類與對象,類的成員和方法,屬性,類的繼承與多態(tài),抽象類等;第7章介紹常用標(biāo)準(zhǔn)庫模塊,常用第三方庫及模塊的使用,自定義模塊的創(chuàng)建、調(diào)用方法;第8章介紹正則表達(dá)式的語法規(guī)則、使用正則表達(dá)式模塊匹配和過濾字符串的步驟與方法等;第9章介紹文本文件和二進(jìn)制文件的訪問方法;第10章介紹程序異常處理和單元測試的方法與步驟;第11章介紹在Python程序中訪問不同類型數(shù)據(jù)庫的方法;第12章介紹基于第三方庫wxPython的圖形用戶界面程序設(shè)計;第13章介紹多進(jìn)程與多線程的創(chuàng)建、使用、通信、同步等;第14章介紹網(wǎng)絡(luò)程序設(shè)計,包括基于TCP和UDP的套接字(Socket)編程、Web編程等;第15章介紹人工智能的基本概念、使用Sklearn庫和TensorFlow框架進(jìn)行人工智能開發(fā)的初步知識。實(shí)驗(yàn)篇包括精選的、與各章知識對應(yīng)的實(shí)驗(yàn)題目,以方便讀者上機(jī)練習(xí)。本書可作為高等學(xué)校計算機(jī)程序設(shè)計課程的教材,也可供Python從業(yè)者學(xué)習(xí)和作為工具書使用。
王雷春,武漢大學(xué)計算機(jī)專業(yè)博士,湖北大學(xué)計算機(jī)與信息工程學(xué)院副教授,先后主持和參與多項(xiàng)國家863項(xiàng)目、國家自然科學(xué)基金、省部級基金課題和橫向項(xiàng)目。負(fù)責(zé)校Python程序設(shè)計、Java、VB、數(shù)據(jù)庫應(yīng)用技的教學(xué)工作。
第1部分 教學(xué)篇
第1章 Python初步 1
1.1 概述 1
1.1.1 Python簡介 1
1.1.2 Python的特點(diǎn) 2
1.1.3 Python的應(yīng)用 2
1.2 開發(fā)環(huán)境 3
1.2.1 Python版本 3
1.2.2 常用開發(fā)環(huán)境 3
1.2.3 Python下載和安裝 4
1.2.4 PyCharm下載和安裝 5
1.2.5 第三方庫安裝 6
1.3 程序開發(fā) 8
1.3.1 程序運(yùn)行方式 8
1.3.2 使用Python自帶工具開發(fā)Python程序 8
1.3.3 使用PyCharm開發(fā)Python程序 11
1.4 程序結(jié)構(gòu)和編碼規(guī)范 12
1.4.1 文件類型 12
1.4.2 代碼結(jié)構(gòu) 13
1.4.3 程序編碼規(guī)范 14
1.5 輸入、輸出函數(shù) 19
1.5.1 input()函數(shù) 19
1.5.2 print()函數(shù) 19
練習(xí)題1 21
第2章 Python編程基礎(chǔ) 23
2.1 數(shù)據(jù)類型 23
2.2 數(shù)字類型 24
2.2.1 整型 24
2.2.2 浮點(diǎn)類型 24
2.2.3 復(fù)數(shù)類型 25
2.2.4 布爾類型 26
2.2.5 數(shù)字類型轉(zhuǎn)換 26
2.2.6 分?jǐn)?shù)和高精度實(shí)數(shù) 26
2.2.7 常用數(shù)學(xué)函數(shù) 27
2.3 字符串類型 28
2.3.1 字符串創(chuàng)建 29
2.3.2 字符串訪問 29
2.3.3 字符串運(yùn)算 30
2.3.4 字符串函數(shù) 31
2.3.5 轉(zhuǎn)義字符 34
2.4 常量和變量 35
2.4.1 常量 35
2.4.2 變量 35
2.5 運(yùn)算符和表達(dá)式 38
2.5.1 常用運(yùn)算符和表達(dá)式 38
2.5.2 運(yùn)算符優(yōu)先級 42
2.5.3 補(bǔ)充說明 43
2.6 內(nèi)置函數(shù) 43
2.6.1 內(nèi)置函數(shù)簡介 43
2.6.2 特殊內(nèi)置函數(shù) 44
2.7 程序調(diào)試 46
2.7.1 錯誤類型 46
2.7.2 在PyCharm中調(diào)試程序 47
2.8 典型案例 47
2.8.1 計算復(fù)雜算術(shù)運(yùn)算表達(dá)式的值 47
2.8.2 求幾何面、幾何體的(表)面積或體積 48
2.8.3 解一元二次方程 48
2.8.4 驗(yàn)證碼驗(yàn)證 49
練習(xí)題2 49
第3章 程序設(shè)計結(jié)構(gòu) 52
3.1 程序設(shè)計方法 52
3.1.1 面向過程程序設(shè)計 52
3.1.2 多文件Python程序 53
3.1.3 算法 53
3.2 順序結(jié)構(gòu) 54
3.3 選擇結(jié)構(gòu) 54
3.3.1 單分支結(jié)構(gòu) 54
3.3.2 二分支結(jié)構(gòu) 55
3.3.3 多分支結(jié)構(gòu) 56
3.3.4 條件運(yùn)算 57
3.3.5 選擇結(jié)構(gòu)嵌套 58
3.4 循環(huán)結(jié)構(gòu) 58
3.4.1 while語句 58
3.4.2 for語句 59
3.4.3 break、continue和pass語句 61
3.4.4 循環(huán)結(jié)構(gòu)的嵌套 62
3.5 典型案例 62
3.5.1 計算部分級數(shù)和 62
3.5.2 使用選擇結(jié)構(gòu)計算員工工資 63
3.5.3 使用遞推法求解實(shí)際問題 64
3.5.4 使用試湊法解方程 64
3.5.5 計算機(jī)猜數(shù)字 65
3.5.6 模擬自動飲料機(jī) 66
練習(xí)題3 67
第4章 組合數(shù)據(jù) 69
4.1 概述 69
4.2 列表 69
4.2.1 列表創(chuàng)建 70
4.2.2 列表訪問 70
4.2.3 列表復(fù)制和刪除 72
4.2.4 列表運(yùn)算 73
4.2.5 列表統(tǒng)計 74
4.2.6 列表元素查找和排序 74
4.3 元組 75
4.3.1 元組創(chuàng)建 75
4.3.2 元組訪問 76
4.3.3 元組復(fù)制和刪除 77
4.3.4 元組運(yùn)算 77
4.3.5 元組統(tǒng)計 77
4.4 字典 78
4.4.1 字典創(chuàng)建 78
4.4.2 字典操作 78
4.4.3 字典復(fù)制和刪除 80
4.5 集合 81
4.5.1 集合創(chuàng)建 81
4.5.2 集合訪問 81
4.5.3 集合復(fù)制和刪除 83
4.5.4 集合運(yùn)算 83
4.5.5 集合統(tǒng)計 83
4.6 嵌套組合數(shù)據(jù) 84
4.7 典型案例 84
4.7.1 查找 84
4.7.2 排序 86
4.7.3 推導(dǎo)式 88
4.7.4 將列表作為堆棧和隊(duì)列使用 90
4.7.5 基于組合數(shù)據(jù)的游戲角色管理 90
練習(xí)題4 92
第5章 函數(shù) 94
5.1 概述 94
5.1.1 函數(shù)作用 94
5.1.2 函數(shù)分類 95
5.2 函數(shù)定義和調(diào)用 95
5.2.1 函數(shù)定義 95
5.2.2 函數(shù)調(diào)用 96
5.3 函數(shù)參數(shù) 97
5.3.1 參數(shù)傳遞 97
5.3.2 參數(shù)類型 98
5.3.3 參數(shù)傳遞的序列解包 99
5.4 特殊函數(shù) 99
5.4.1 匿名函數(shù) 99
5.4.2 遞歸函數(shù) 100
5.4.3 嵌套函數(shù) 101
5.5 裝飾器 102
5.5.1 裝飾器定義和調(diào)用 102
5.5.2 帶參數(shù)的裝飾器 103
5.6 變量作用域 104
5.7 典型案例 105
5.7.1 加密和解密 105
5.7.2 求最大公約數(shù) 106
5.7.3 使用裝飾器檢查函數(shù)參數(shù)合法性 107
5.7.4 模擬輪盤抽獎游戲 108
練習(xí)題5 109
第6章 面向?qū)ο蟪绦蛟O(shè)計 111
6.1 概述 111
6.1.1 面向?qū)ο蟪绦蛟O(shè)計思路 111
6.1.2 面向?qū)ο蟪绦蚪M成 113
6.1.3 面向?qū)ο蟪绦蛟O(shè)計任務(wù) 113
6.2 類和對象 113
6.2.1 類定義 113
6.2.2 對象創(chuàng)建和使用 114
6.3 類的成員 114
6.3.1 成員類型 114
6.3.2 內(nèi)置成員 116
6.4 類的方法 117
6.4.1 方法類型 117
6.4.2 屬性 118
6.4.3 特殊方法 119
6.5 類的繼承和多態(tài) 120
6.5.1 類的繼承 120
6.5.2 類的多態(tài) 121
6.6 抽象類和抽象方法 122
6.7 典型案例 122
練習(xí)題6 127
第7章 模塊、包和庫 129
7.1 概述 129
7.2 常用標(biāo)準(zhǔn)庫模塊 129
7.2.1 turtle模塊 130
7.2.2 random模塊 132
7.2.3 time模塊和datetime模塊 134
7.2.4 os模塊 136
7.2.5 sys模塊 138
7.2.6 timeit模塊 138
7.2.7 zlib模塊 139
7.3 常用第三方庫 139
7.3.1 NumPy庫 140
7.3.2 Pandas庫 143
7.3.3 SciPy庫 145
7.3.4 Matplotlib庫 147
7.3.5 Jieba庫 150
7.3.6 Pyinstaller庫 151
7.4 自定義模塊 152
7.5 典型案例 154
7.5.1 使用turtle模塊繪制表面填充的正方體 154
7.5.2 使用NumPy庫和Matplotlib庫分析股票 155
7.5.3 使用Pandas庫分析股票交易數(shù)據(jù) 157
7.5.4 使用圖像處理庫處理和顯示圖像 158
練習(xí)題7 159
第8章 正則表達(dá)式 161
8.1 概述 161
8.2 正則表達(dá)式語法 162
8.3 使用re模塊處理字符串 163
8.3.1 re模塊中的常用函數(shù) 164
8.3.2 常用正則表達(dá)式 167
8.4 典型案例 169
8.4.1 提取并匯總字符串中包含的費(fèi)用 169
8.4.2 校驗(yàn)字符串合法性 169
8.4.3 解析網(wǎng)頁內(nèi)容 171
練習(xí)題8 172
第9章 文件訪問 174
9.1 概述 174
9.2 文本文件訪問 174
9.2.1 打開文件 175
9.2.2 文件操作 176
9.3 二進(jìn)制文件訪問 179
9.3.1 使用pickle模塊讀/寫二進(jìn)制文件 179
9.3.2 使用struct模塊讀/寫二進(jìn)制文件 180
9.3.3 使用marshal模塊讀/寫二進(jìn)制文件 181
9.3.4 使用shelve模塊讀/寫二進(jìn)制文件 182
9.4 典型案例 183
9.4.1 合并文件 183
9.4.2 CSV文件操作 184
練習(xí)題9 185
第10章 異常處理和單元測試 187
10.1 異常類和異常處理 187
10.1.1 異常和異常類 187
10.1.2 異常處理 188
10.1.3 斷言語句 190
10.2 單元測試 191
10.3 典型案例 192
10.3.1 自定義異常類 192
10.3.2 自定義測試類 193
練習(xí)題10 194
第11章 數(shù)據(jù)庫訪問 196
11.1 概述 196
11.2 常用關(guān)系數(shù)據(jù)庫訪問 197
11.2.1 常用關(guān)系數(shù)據(jù)庫簡介 197
11.2.2 Python DB-API規(guī)范 199
11.2.3 典型案例——訪問關(guān)系數(shù)據(jù)庫 200
11.3 非關(guān)系數(shù)據(jù)庫訪問 208
11.3.1 MongoDB 208
11.3.2 典型案例——訪問MongoDB 210
練習(xí)題11 212
第12章 圖形用戶界面編程 213
12.1 wxPython庫簡介 213
12.2 事件處理 214
12.3 常用控件 215
12.3.1 窗體 215
12.3.2 按鈕、標(biāo)簽和文本框 216
12.3.3 單選按鈕、復(fù)選框 217
12.3.4 列表框、組合框 218
12.3.5 菜單 219
12.3.6 工具欄、狀態(tài)欄 222
12.3.7 對話框 224
12.4 布局 227
12.4.1 布局及其類型 227
12.4.2 wx.BoxSizer 228
12.4.3 wx.GridSizer 229
12.5 典型案例——專利管理系統(tǒng) 230
練習(xí)題12 237
第13章 多進(jìn)程與多線程 238
13.1 Python中的多進(jìn)程 238
13.1.1 進(jìn)程的含義 238
13.1.2 創(chuàng)建進(jìn)程 238
13.1.3 進(jìn)程通信 240
13.1.4 進(jìn)程同步 242
13.2 Python中的多線程 243
13.2.1 線程的含義 243
13.2.2 創(chuàng)建線程 244
13.2.3 線程通信 247
13.2.4 線程同步 247
13.3 典型案例 250
13.3.1 使用多進(jìn)程導(dǎo)入/導(dǎo)出數(shù)據(jù) 250
13.3.2 使用多線程模擬彩票發(fā)行 251
練習(xí)題13 253
第14章 網(wǎng)絡(luò)程序設(shè)計 254
14.1 網(wǎng)絡(luò)協(xié)議 254
14.1.1 互聯(lián)網(wǎng)協(xié)議族 254
14.1.2 TCP/IP 254
14.2 套接字(Socket)編程 255
14.2.1 套接字簡介 255
14.2.2 基于TCP的套接字編程 256
14.2.3 基于UDP的套接字編程 257
14.3 Web編程 259
14.3.1 Web編程概述 259
14.3.2 Django 260
14.4 典型案例 267
14.4.1 簡單嗅探器 267
14.4.2 多線程端口掃描 268
14.4.3 使用網(wǎng)絡(luò)爬蟲爬取全國城市天氣信息 269
14.4.4 基于Django的個人博客 275
練習(xí)題14 283
第15章 Python與人工智能 284
15.1 概述 284
15.1.1 人工智能簡介 284
15.1.2 Python與人工智能的關(guān)系 286
15.2 機(jī)器學(xué)習(xí) 286
15.2.1 Sklearn 287
15.2.2 典型案例——使用線性回歸模型訓(xùn)練、測試和預(yù)測數(shù)據(jù) 289
15.3 深度學(xué)習(xí) 290
15.3.1 TensorFlow 291
15.3.2 典型案例——識別模糊的手寫數(shù)字圖像 293
練習(xí)題15 297
第2部分 實(shí)驗(yàn)篇
實(shí)驗(yàn)1 Python初步 299
一、實(shí)驗(yàn)?zāi)康?299
二、實(shí)驗(yàn)內(nèi)容 299
實(shí)驗(yàn)2 Python編程基礎(chǔ) 299
一、實(shí)驗(yàn)?zāi)康?299
二、實(shí)驗(yàn)內(nèi)容 300
實(shí)驗(yàn)3 程序設(shè)計結(jié)構(gòu) 300
一、實(shí)驗(yàn)?zāi)康?300
二、實(shí)驗(yàn)內(nèi)容 301
實(shí)驗(yàn)4 組合數(shù)據(jù) 301
一、實(shí)驗(yàn)?zāi)康?301
二、實(shí)驗(yàn)內(nèi)容 302
實(shí)驗(yàn)5 函數(shù) 302
一、實(shí)驗(yàn)?zāi)康?302
二、實(shí)驗(yàn)內(nèi)容 303
實(shí)驗(yàn)6 面向?qū)ο蟪绦蛟O(shè)計 303
一、實(shí)驗(yàn)?zāi)康?303
二、實(shí)驗(yàn)內(nèi)容 304
實(shí)驗(yàn)7 模塊、包和庫 304
一、實(shí)驗(yàn)?zāi)康?304
二、實(shí)驗(yàn)內(nèi)容 304
實(shí)驗(yàn)8 正則表達(dá)式 305
一、實(shí)驗(yàn)?zāi)康?305
二、實(shí)驗(yàn)內(nèi)容 305
實(shí)驗(yàn)9 文件訪問 305
一、實(shí)驗(yàn)?zāi)康?305
二、實(shí)驗(yàn)內(nèi)容 305
實(shí)驗(yàn)10 異常處理和單元測試 306
一、實(shí)驗(yàn)?zāi)康?306
二、實(shí)驗(yàn)內(nèi)容 306
實(shí)驗(yàn)11 數(shù)據(jù)庫訪問 306
一、實(shí)驗(yàn)?zāi)康?306
二、實(shí)驗(yàn)內(nèi)容 306
實(shí)驗(yàn)12 圖形用戶界面編程 307
一、實(shí)驗(yàn)?zāi)康?307
二、實(shí)驗(yàn)內(nèi)容 307
實(shí)驗(yàn)13 多進(jìn)程與多線程 308
一、實(shí)驗(yàn)?zāi)康?308
二、實(shí)驗(yàn)內(nèi)容 308
實(shí)驗(yàn)14 網(wǎng)絡(luò)程序設(shè)計 308
一、實(shí)驗(yàn)?zāi)康?308
二、實(shí)驗(yàn)內(nèi)容 308
實(shí)驗(yàn)15 Python與人工智能 308
一、實(shí)驗(yàn)?zāi)康?308
二、實(shí)驗(yàn)內(nèi)容 309
參考文獻(xiàn) 310