Python程序設(shè)計(jì)基礎(chǔ)
定 價(jià):59.8 元
叢書名:高等院校計(jì)算機(jī)基礎(chǔ)課程新形態(tài)系列
- 作者:王靜紅 傅志斌
- 出版時(shí)間:2024/2/1
- ISBN:9787115622655
- 出 版 社:人民郵電出版社
- 中圖法分類:TP311.561
- 頁(yè)碼:244
- 紙張:
- 版次:01
- 開本:16開
本書以Python知識(shí)脈絡(luò)為線索,結(jié)合Python生態(tài)系統(tǒng),通過(guò)融合傳統(tǒng)文化、歷史人文等元素的實(shí)踐案例,力求在輕松的氛圍中培養(yǎng)學(xué)習(xí)者的程序設(shè)計(jì)能力和計(jì)算思維能力。
全書共分10章,主要內(nèi)容包括搭建編程環(huán)境、基礎(chǔ)語(yǔ)法、流程控制語(yǔ)句、字符串、列表元組與字典、函數(shù)、訪問(wèn)文件、處理異常、模塊與包、面向?qū)ο缶幊痰。本書各章采用模塊化組織,除了具體知識(shí)細(xì)節(jié)的梳理鋪陳,每章都會(huì)介紹相關(guān)的Python庫(kù),并提供多個(gè)案例對(duì)全章所學(xué)知識(shí)做綜合演練,通過(guò)拓展實(shí)踐進(jìn)一步提升讀者的實(shí)操能力。
1.除介紹Python語(yǔ)言編程應(yīng)用外,還強(qiáng)化計(jì)算思維能力培養(yǎng),將計(jì)算思維融入具體語(yǔ)言實(shí)踐中。
2.各章采用模塊化組織,除了具體知識(shí),每章都會(huì)介紹相關(guān)的Python庫(kù),之后有案例來(lái)實(shí)踐所學(xué)的知識(shí),在實(shí)踐過(guò)程中融入思維訓(xùn)練。
3.內(nèi)容詳細(xì)、案例實(shí)用。教學(xué)、習(xí)題和實(shí)踐選用的案例實(shí)用、豐富和典型。
4.豐富的配套資源。有配套在線課程,其中包括視頻講解、習(xí)題實(shí)驗(yàn)、多媒體課件、資源素材等。
王靜紅,博士,河北師范大學(xué)三級(jí)教授,河北省有突出貢獻(xiàn)中青年專家,河北省新世紀(jì)“三三三”人才,河北省信息化專家委員會(huì)委員,河北省大數(shù)據(jù)學(xué)會(huì)秘書長(zhǎng),國(guó)際IEEE高級(jí)會(huì)員,中國(guó)人工智能學(xué)會(huì)專委會(huì)委員,石家莊市拔尖人才,石家莊市十佳青年教師,河北省人工智能學(xué)會(huì)理事,中國(guó)計(jì)算機(jī)CCF石家莊執(zhí)委。美國(guó)常青藤大學(xué),伊利諾伊州大學(xué)厄巴納-香檳分校(UIUC)高級(jí)訪問(wèn)學(xué)者。 主持的省科技攻關(guān)項(xiàng)目獲河北省科技進(jìn)步二等獎(jiǎng)。教學(xué)名師、學(xué)術(shù)帶頭人、中青年骨干教師。先后在《Pattern Recognition and Artificial Intelligence》、《Journal of Zhejiang University》、《計(jì)算機(jī)研究與發(fā)展》等國(guó)內(nèi)外科技刊物發(fā)表論文50多篇,其中30余篇被SCI、EI檢索收錄?蒲蟹较?yàn)榇髷?shù)據(jù)與數(shù)據(jù)挖掘、人工智能、模式識(shí)別、計(jì)算機(jī)應(yīng)用等。
目錄
第 1章 搭建編程環(huán)境 1
1.1 初識(shí)Python 1
1.2 理解Python解釋器 2
1.3 熟悉Python自帶的編程環(huán)境 2
1.3.1 安裝Python解釋器 2
1.3.2 Python自帶編程環(huán)境簡(jiǎn)介 3
1.4 Python的集成開發(fā)環(huán)境簡(jiǎn)介 5
1.4.1 PyCharm簡(jiǎn)介 5
1.4.2 Visual Studio Code簡(jiǎn)介 8
1.4.3 Jupyter Notebook簡(jiǎn)介 9
1.4.4 Thonny簡(jiǎn)介 10
1.5 Python生態(tài)之turtle庫(kù) 10
1.5.1 小海龜?shù)淖鴺?biāo)系 11
1.5.2 小海龜?shù)某S梅椒ā?2
1.6 小試牛刀 16
1.6.1 繪制一朵向日葵 16
1.6.2 繪制多彩的螺旋 17
1.7 拓展實(shí)踐:使用海龜繪制京劇臉譜 18
1.7.1 繪制前的預(yù)備工作 18
1.7.2 繪制臉譜代碼解析 19
1.7.3 為繪制的臉譜題字 21
本章小結(jié) 22
思考與練習(xí) 22
第 2章 基礎(chǔ)語(yǔ)法概述 23
2.1 Python語(yǔ)法規(guī)范 23
2.1.1 大小寫 23
2.1.2 縮進(jìn) 23
2.1.3 注釋 24
2.1.4 留白 25
2.1.5 換行 25
2.2 變量和數(shù)據(jù)類型 27
2.2.1 變量 27
2.2.2 數(shù)據(jù)類型 28
2.2.3 類型轉(zhuǎn)換 30
2.3 常見運(yùn)算符 31
2.3.1 算術(shù)運(yùn)算符 31
2.3.2 賦值運(yùn)算符 32
2.3.3 復(fù)合賦值運(yùn)算符 32
2.3.4 比較運(yùn)算符 32
2.3.5 邏輯運(yùn)算符 33
2.3.6 成員運(yùn)算符 33
2.3.7 運(yùn)算符的優(yōu)先級(jí) 34
2.4 輸入與輸出 34
2.4.1 輸出函數(shù)print() 34
2.4.2 輸入函數(shù)input() 35
2.5 Python生態(tài)之math庫(kù) 36
2.5.1 訪問(wèn)math庫(kù)文檔 36
2.5.2 math庫(kù)函數(shù)舉例 37
2.6 小試牛刀 38
2.6.1 什么樣的密碼更安全 38
2.6.2 人體內(nèi)大約有多少個(gè)水分子 39
2.6.3 多一份備份,多幾分保障 39
2.6.4 如何換算座位號(hào) 40
2.6.5 日出時(shí)間是多少 40
2.7 拓展實(shí)踐:模擬自動(dòng)售貨機(jī)找零 42
2.7.1 問(wèn)題描述 42
2.7.2 IPO建構(gòu)法 42
2.7.3 分解問(wèn)題 42
2.7.4 編寫程序 43
2.7.5 測(cè)試代碼 44
本章小結(jié) 44
思考與練習(xí) 44
第3章 流程控制語(yǔ)句 45
3.1 選擇結(jié)構(gòu):if語(yǔ)句 45
3.1.1 if語(yǔ)句的基本形式 45
3.1.2 if語(yǔ)句中的條件表達(dá)式 48
3.1.3 if語(yǔ)句的嵌套 51
3.2 循環(huán)結(jié)構(gòu):while與for語(yǔ)句 51
3.2.1 while語(yǔ)句 51
3.2.2 for語(yǔ)句 53
3.2.3 循環(huán)結(jié)構(gòu)的嵌套 55
3.3 循環(huán)結(jié)構(gòu):break與continue語(yǔ)句 56
3.3.1 break語(yǔ)句 57
3.3.2 continue語(yǔ)句 58
3.3.3 循環(huán)結(jié)構(gòu)的else分支 58
3.4 pass語(yǔ)句 59
3.5 Python生態(tài)之random庫(kù) 60
3.5.1 隨機(jī)小數(shù) 60
3.5.2 隨機(jī)整數(shù) 61
3.5.3 隨機(jī)抽樣 61
3.5.4 洗牌 62
3.6 小試牛刀 63
3.6.1 計(jì)算人體BMI指數(shù) 63
3.6.2 伯努利試驗(yàn)不白努力 64
3.6.3 模擬布朗運(yùn)動(dòng) 65
3.6.4 羊與汽車的距離是一念之差 66
3.6.5 《少年中國(guó)說(shuō)》案例進(jìn)階版 67
3.7 拓展實(shí)踐:隨機(jī)數(shù)是如何生成的 71
3.7.1 計(jì)算機(jī)中的隨機(jī)數(shù)真的隨機(jī)嗎 71
3.7.2 實(shí)現(xiàn)一個(gè)偽隨機(jī)數(shù)生成器 71
3.7.3 去掉偽隨機(jī)數(shù)算法的偽裝 72
3.7.4 衡量偽隨機(jī)數(shù)的隨機(jī)性 72
本章小結(jié) 74
思考與練習(xí) 75
第4章 字符串 76
4.1 認(rèn)識(shí)字符串 76
4.1.1 字符串 76
4.1.2 轉(zhuǎn)義字符 77
4.1.3 字符串的運(yùn)算符 78
4.1.4 字符的編碼 78
4.2 字符串的格式化 79
4.2.1 字符串的format()方法 79
4.2.2 格式化字符串字面值 81
4.2.3 Python 2.x的格式化方法 81
4.3 字符串的切片 81
4.3.1 字符串是字符構(gòu)成的序列 81
4.3.2 字符串的切片 82
4.3.3 字符串是不可修改的 83
4.4 字符串的常用方法 83
4.4.1 find()方法 84
4.4.2 index()方法 84
4.4.3 count()方法 84
4.4.4 replace()方法 85
4.4.5 split()與join()方法 85
4.5 Python生態(tài)之xml庫(kù) 86
4.5.1 XML是什么 86
4.5.2 解析XML數(shù)據(jù) 87
4.6 小試牛刀 90
4.6.1 模擬詩(shī)詞飛花令 90
4.6.2 輸出乘法口訣表 91
4.6.3 模擬傳輸校驗(yàn)碼 93
4.6.4 名畫知識(shí)問(wèn)答 96
4.7 拓展實(shí)踐:綜合運(yùn)用字符串的方法 97
4.7.1 猜單詞小游戲 98
4.7.2 游戲的分析與初步實(shí)現(xiàn) 99
4.7.3 游戲代碼的完善 102
本章小結(jié) 104
思考與練習(xí) 105
第5章 列表、元組與字典 106
5.1 列表 106
5.1.1 認(rèn)識(shí)列表 106
5.1.2 遍歷列表 108
5.1.3 列表的運(yùn)算符 109
5.2 列表元素的操作 109
5.2.1 元素最值 110
5.2.2 增加元素 110
5.2.3 修改元素 111
5.2.4 刪除元素 111
5.2.5 元素排序 114
5.3 元組 115
5.3.1 認(rèn)識(shí)元組 115
5.3.2 遍歷元組 115
5.4 字典 116
5.4.1 認(rèn)識(shí)字典 116
5.4.2 字典的常見操作 117
5.5 Python生態(tài)之jieba庫(kù) 121
5.5.1 jieba庫(kù)的安裝 121
5.5.2 分詞的基本操作 121
5.5.3 詞頻統(tǒng)計(jì) 122
5.6 小試牛刀 124
5.6.1 隨機(jī)分配辦公室 124
5.6.2 模擬婚介 125
5.6.3 模擬抽獎(jiǎng) 126
5.6.4 誰(shuí)是天際社交達(dá)人 127
5.7 拓展實(shí)踐:讓機(jī)器理解文章的相似性 130
5.7.1 文本的精確比對(duì) 130
5.7.2 相似度與散點(diǎn)圖 130
5.7.3 散點(diǎn)圖的實(shí)現(xiàn) 131
5.7.4 自然語(yǔ)言處理與人工智能 138
本章小結(jié) 139
思考與練習(xí) 139
第6章 函數(shù) 140
6.1 函數(shù)的定義和調(diào)用 140
6.1.1 函數(shù)定義 140
6.1.2 函數(shù)的意義 141
6.1.3 函數(shù)的調(diào)用 143
6.1.4 函數(shù)的幫助信息 145
6.2 函數(shù)的參數(shù)與返回值 146
6.2.1 深入理解參數(shù) 146
6.2.2 函數(shù)的返回值 149
6.2.3 四種函數(shù)類型 151
6.3 函數(shù)的嵌套調(diào)用與變量作用域 152
6.3.1 函數(shù)的嵌套調(diào)用 152
6.3.2 變量的作用域 155
6.4 遞歸 159
6.4.1 函數(shù)的遞歸 159
6.4.2 理解遞歸思想 160
6.4.3 日常生活中的遞歸 161
6.5 Python生態(tài)之time庫(kù) 162
6.5.1 時(shí)間戳 162
6.5.2 時(shí)間結(jié)構(gòu)體與格式符 162
6.5.3 其他常用時(shí)間函數(shù) 164
6.6 小試牛刀 165
6.6.1 使用迭代公式求π 165
6.6.2 模擬比薩計(jì)價(jià) 166
6.6.3 重構(gòu)蒙提霍爾三門問(wèn)題 167
6.6.4 判斷元素個(gè)數(shù)是否為偶數(shù) 168
6.6.5 模擬二十四節(jié)氣倒計(jì)時(shí) 168
6.7 拓展實(shí)踐:利用遞歸繪制分形圖案 171
6.7.1 什么是分形圖案 171
6.7.2 繪制一棵樹 172
6.7.3 繪制科克曲線 176
本章小結(jié) 178
思考與練習(xí) 178
第7章 訪問(wèn)文件 179
7.1 文件的使用流程 179
7.1.1 為什么要使用文件 179
7.1.2 如何使用文件 179
7.1.3 open()函數(shù)的使用 179
7.2 文件的讀寫操作 181
7.2.1 讀取文本文件 181
7.2.2 寫入文本文件 182
7.2.3 with語(yǔ)句 183
7.3 Python生態(tài)之os庫(kù) 183
7.3.1 文件改名 184
7.3.2 刪除文件 184
7.3.3 文件夾相關(guān)操作 184
7.4 小試牛刀 186
7.4.1 使用配置文件保存比薩定價(jià) 186
7.4.2 去掉重復(fù)姓名 187
7.4.3 文件批量重命名 188
7.5 拓展實(shí)踐:根據(jù)訂單數(shù)據(jù)生成銷售報(bào)告 189
7.5.1 問(wèn)題描述 189
7.5.2 思路分析 190
7.5.3 代碼實(shí)現(xiàn) 190
本章小結(jié) 192
思考與練習(xí) 192
第8章 處理異!194
8.1 異常的基礎(chǔ)知識(shí) 194
8.1.1 異常是什么 194
8.1.2 異常處理的語(yǔ)法結(jié)構(gòu) 194
8.2 異常的種類 197
8.2.1 內(nèi)置的常見異常種類 197
8.2.2 Exception異常類 197
8.2.3 自定義異常 198
8.3 主動(dòng)拋出異!198
8.3.1 用raise語(yǔ)句上報(bào)異常 198
8.3.2 用assert語(yǔ)句調(diào)試程序 199
8.4 Python生態(tài)之shutil庫(kù) 200
8.4.1 使用copy()函數(shù)復(fù)制文件 200
8.4.2 使用copy2()函數(shù)復(fù)制文件的元數(shù)據(jù) 201
8.4.3 shutil庫(kù)的其他函數(shù)簡(jiǎn)介 202
8.5 小試牛刀 202
8.5.1 繪制歷史名人時(shí)間線 202
8.5.2 批量歸納圖片文件 205
8.6 拓展實(shí)踐:給程序做個(gè)彩超 207
8.6.1 百思不得其解的bug 207
8.6.2 使用斷點(diǎn)逐步調(diào)試程序 208
本章小結(jié) 211
思考與練習(xí) 211
第9章 模塊與包 212
9.1 模塊與包的本質(zhì) 212
9.2 庫(kù)的安裝與導(dǎo)入 213
9.2.1 使用pip安裝第三方庫(kù) 213
9.2.2 導(dǎo)入模塊的不同形式 214
9.3 Python生態(tài) 之Pygame庫(kù) 216
9.3.1 初識(shí)Pygame 216
9.3.2 搭建游戲主框架 216
9.3.3 完善游戲細(xì)節(jié) 217
9.4 小試牛刀 221
9.4.1 游戲預(yù)備工作 221
9.4.2 游戲主循環(huán) 223
9.5 拓展實(shí)踐:使用模塊組織代碼 226
9.5.1 多樣的投票模式 226
9.5.2 一個(gè)具體的投票問(wèn)題 226
9.5.3 模塊vote_tools 227
9.5.4 模塊vote_methods 228
9.5.5 導(dǎo)入自定義的模塊 230
本章小結(jié) 231
思考與練習(xí) 231
第 10章 面向?qū)ο缶幊獭?32
10.1 面向?qū)ο蠛?jiǎn)介 232
10.2 類、對(duì)象與封裝 234
10.2.1 定義一個(gè)類 234
10.2.2 對(duì)象實(shí)例化過(guò)程 235
10.2.3 訪問(wèn)控制 236
10.3 繼承與多態(tài) 237
10.3.1 繼承的基本形式 237
10.3.2 方法的覆蓋 239
10.3.3 多態(tài)和鴨子類型 240
10.4 Python生態(tài)之tkinter庫(kù) 241
10.4.1 初識(shí)tkinter 241
10.4.2 生成窗體與標(biāo)簽 242
10.4.3 生成文本框與按鈕 243
10.5 小試牛刀 244
10.5.1 使用類重構(gòu)歷史時(shí)間線案例 244
10.5.2 使用tkinter設(shè)計(jì)打地鼠游戲 246
10.6 拓展實(shí)踐:試一把面向?qū)ο缶幊獭?50
10.6.1 識(shí)別對(duì)象與類 250
10.6.2 使用設(shè)計(jì)模式 251
10.6.3 使用模塊和包 252
本章小結(jié) 253
思考與練習(xí) 254