程序設(shè)計(jì)實(shí)踐教程:Python語(yǔ)言版
定 價(jià):59 元
叢書名:重點(diǎn)大學(xué)計(jì)算機(jī)教材
- 作者:蘇小紅,孫承杰,李東
- 出版時(shí)間:2021/12/1
- ISBN:9787111696544
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP311.561
- 頁(yè)碼:
- 紙張:膠版紙
- 版次:
- 開(kāi)本:16開(kāi)
本書以問(wèn)題求解為核心原則,以Python語(yǔ)言為平臺(tái),通過(guò)面向應(yīng)用和循序漸進(jìn)設(shè)計(jì)的典型實(shí)例,引導(dǎo)學(xué)生關(guān)注和掌握編程邏輯和方法,實(shí)現(xiàn)從系統(tǒng)級(jí)上對(duì)算法和程序設(shè)計(jì)的再認(rèn)識(shí),強(qiáng)調(diào)系統(tǒng)設(shè)計(jì)。主要內(nèi)容包括常用Python集成開(kāi)發(fā)與調(diào)試環(huán)境、經(jīng)典案例與算法、綜合案例三個(gè)部分,可作為高校Python程序設(shè)計(jì)等相關(guān)課程的實(shí)踐參考書,也可作為讀者自學(xué)Python編程的參考讀物。
一提到Python語(yǔ)言,大家一定會(huì)首先想到以下廣為人知的經(jīng)典口號(hào):人生苦短,我用Python;人生苦短,Python是岸;人生苦短,Python當(dāng)歌。
寥寥數(shù)字,盡顯Python之禪——簡(jiǎn)潔為美,簡(jiǎn)約而不簡(jiǎn)單。C、Java、C++語(yǔ)言長(zhǎng)期傲視群雄,而Python語(yǔ)言作為一種“年輕”的語(yǔ)言,大有后來(lái)者居上之勢(shì),成為人工智能+大數(shù)據(jù)時(shí)代的不二之選。
與之前的《程序設(shè)計(jì)實(shí)踐教程:C 語(yǔ)言版》和《程序設(shè)計(jì)實(shí)踐教程:C++語(yǔ)言版》一樣,本書程序采用統(tǒng)一的代碼規(guī)范編寫,并且在編碼中注重程序的健壯性。同時(shí),書中實(shí)踐案例的選取兼顧趣味性和實(shí)用性。本書內(nèi)容分為三部分。部分介紹集成開(kāi)發(fā)環(huán)境,包括IDLE、PyCharm、Jupyter Notebook、Visual Studio Code四種常用的Python語(yǔ)言集成開(kāi)發(fā)環(huán)境的使用和程序調(diào)試方法。第二部分是經(jīng)典實(shí)驗(yàn)案例,主要包括基本運(yùn)算和基本 I/O、基本控制結(jié)構(gòu)、枚舉法、遞推法、近似迭代法、遞歸法、趣味數(shù)字、矩陣運(yùn)算、日期和時(shí)間、文本處理、面向?qū)ο、查找和排序、高精度?jì)算和近似計(jì)算、貪心與動(dòng)態(tài)規(guī)劃等專題。在本部分中,還結(jié)合Python語(yǔ)言獨(dú)有的特點(diǎn),設(shè)計(jì)了使用jieba庫(kù)進(jìn)行中文文檔的詞頻統(tǒng)計(jì)分析、使用wordcloud庫(kù)顯示詞云圖以及CSV格式文件的讀寫等案例。第三部分是綜合案例,包括餐飲服務(wù)質(zhì)量調(diào)查、小學(xué)生算術(shù)運(yùn)算訓(xùn)練系統(tǒng)、青年歌手大獎(jiǎng)賽現(xiàn)場(chǎng)分?jǐn)?shù)統(tǒng)計(jì)、隨機(jī)點(diǎn)名系統(tǒng)、基于turtle庫(kù)的圖形繪制5個(gè)應(yīng)用案例,以及多個(gè)游戲設(shè)計(jì)案例,如火柴游戲、文曲星猜數(shù)游戲、2048 數(shù)字游戲、貪吃蛇游戲、飛機(jī)大戰(zhàn)、Flappy bird、井字棋游戲、桿子游戲、俄羅斯方塊。
書中每個(gè)實(shí)踐案例均提供了多種編程方法,并且很多案例都采用循序漸進(jìn)的任務(wù)驅(qū)動(dòng)方式,引導(dǎo)讀者舉一反三、觸類旁通。這些實(shí)踐案例會(huì)幫助你提升編程能力,讓你在快速?gòu)男率殖砷L(zhǎng)為高手的同時(shí),體會(huì) Python 之美和程序設(shè)計(jì)之美。
本書由蘇小紅組織和統(tǒng)籌編寫工作,部分由孫承杰執(zhí)筆,第二部分和第三部分主要由蘇小紅執(zhí)筆,新增的案例由李東設(shè)計(jì)并進(jìn)行程序調(diào)試,其他部分案例由蔣遠(yuǎn)設(shè)計(jì)并調(diào)試。
因編者水平有限,書中錯(cuò)誤在所難免,歡迎讀者對(duì)本書提出意見(jiàn)和建議,我們會(huì)在重印時(shí)予以更正,讀者也可隨時(shí)從我們的教材網(wǎng)站(http://sse.hit.edu.cn/book/)和華章網(wǎng)站(http://www.hzbook.com)下載勘誤表。編者的 E-mail 地址為 sxh@hit.edu.cn。
編 者
2021 年于哈爾濱工業(yè)大學(xué)計(jì)算學(xué)部
蘇小紅 教授,博士生導(dǎo)師,現(xiàn)任哈爾濱工業(yè)大學(xué)計(jì)算學(xué)部智能軟件工程研究中心主任,計(jì)算機(jī)科學(xué)與技術(shù)實(shí)驗(yàn)教學(xué)示范中心副主任。國(guó)家精品資源共享課“C語(yǔ)言程序設(shè)計(jì)”和省級(jí)精品課程“計(jì)算機(jī)圖形學(xué)”負(fù)責(zé)人。主持的MOOC課程“C語(yǔ)言程序設(shè)計(jì)精髓”和“程序設(shè)計(jì)基礎(chǔ)”被評(píng)為國(guó)家精品在線開(kāi)放課程。獲教學(xué)成果一、二等獎(jiǎng)各1項(xiàng),黑龍江省教學(xué)成果一等獎(jiǎng)4項(xiàng)、二等獎(jiǎng)3項(xiàng)。曾獲省教學(xué)名師獎(jiǎng)、寶鋼優(yōu)秀教師獎(jiǎng)等榮譽(yù)稱號(hào)。
前言
部分 開(kāi)發(fā)環(huán)境
第1章 集成開(kāi)發(fā)環(huán)境簡(jiǎn)介 2
1.1 程序調(diào)試 2
1.1.1 程序調(diào)試的概念 2
1.1.2 程序錯(cuò)誤的種類 2
1.1.3 常用調(diào)試方法 3
1.2 經(jīng)典集成開(kāi)發(fā)環(huán)境介紹 4
1.2.1 IDLE的使用和調(diào)試方法 4
1.2.2 PyCharm的使用和調(diào)試方法 10
1.2.3 Jupyter Notebook的使用和調(diào)試方法 24
1.2.4 Visual Studio Code的使用和調(diào)試方法 31
1.3 小結(jié) 38
第二部分 經(jīng)典實(shí)驗(yàn)案例
第2章 基本運(yùn)算和基本I/O專題 40
2.1 數(shù)位拆分v1.0 40
2.2 身高預(yù)測(cè)v1.0 41
2.3 計(jì)算三角形面積 42
2.4 存款計(jì)算器 43
第3章 基本控制結(jié)構(gòu)專題 45
3.1 數(shù)位拆分v2.0 45
3.2 身高預(yù)測(cè)v2.0 48
3.3 體型判斷 49
3.4 算術(shù)計(jì)算器 50
3.5 國(guó)王的許諾 54
3.6 計(jì)算圓周率 55
3.7 數(shù)字位數(shù)判斷 56
3.8 階乘求和 58
第4章 枚舉法專題 61
4.1 還原算術(shù)表達(dá)式 61
4.2 求解不等式 63
4.3 韓信點(diǎn)兵 65
4.4 減肥食譜 66
第5章 遞推法專題 68
5.1 猴子吃桃 68
5.2 吹氣球 69
5.3 發(fā)紅包 70
5.4 水手分椰子 73
第6章 近似迭代法專題 75
6.1 直接迭代法求方程根 75
6.2 牛頓迭代法求方程根 76
6.3 二分法求方程根 79
6.4 計(jì)算平方根 80
第7章 遞歸法專題 82
7.1 公約數(shù) 82
7.2 漢諾塔問(wèn)題 85
7.3 騎士游歷 86
7.4 八皇后問(wèn)題 89
第8章 趣味數(shù)字專題 92
8.1 楊輝三角形 92
8.2 好數(shù)對(duì) 95
8.3 完全數(shù) 97
8.4 親密數(shù) 100
8.5 素?cái)?shù)求和 103
8.6 驗(yàn)證哥德巴赫猜想 105
8.7 孿生素?cái)?shù) 106
8.8 回文素?cái)?shù) 107
第9章 矩陣運(yùn)算專題 111
9.1 矩陣轉(zhuǎn)置 111
9.2 幻方矩陣 112
9.3 蛇形矩陣 115
9.4 螺旋矩陣 117
第10章 日期和時(shí)間專題 122
10.1 三天打魚兩天曬網(wǎng) 122
10.2 統(tǒng)計(jì)特殊的星期天 125
10.3 日期轉(zhuǎn)換 127
10.4 動(dòng)態(tài)時(shí)鐘 134
第11章 文本處理專題 137
11.1 字符統(tǒng)計(jì) 137
11.2 單詞統(tǒng)計(jì) 145
11.3 行程長(zhǎng)度編碼 150
11.4 串的模式匹配 152
11.5 中文文檔的統(tǒng)計(jì)分析 157
11.6 CSV格式文件的讀寫 160
第12章 面向?qū)ο髮n} 161
12.1 數(shù)字時(shí)鐘模擬 161
12.2 洗發(fā)牌模擬 162
12.3 逆波蘭表達(dá)式求值 165
12.4 約瑟夫問(wèn)題 170
第13章 查找和排序?qū)n} 177
13.1 尋找值 177
13.2 關(guān)鍵字統(tǒng)計(jì) 182
13.3 驗(yàn)證卡布列克運(yùn)算 186
13.4 鏈表逆序 192
第14章 高精度計(jì)算和近似計(jì)算專題 196
14.1 高精度計(jì)算任意位圓周率 196
14.2 蒙特卡羅法近似計(jì)算圓周率 199
14.3 蒙特卡羅法計(jì)算定積分 201
第15章 貪心與動(dòng)態(tài)規(guī)劃專題 203
15.1 活動(dòng)安排 203
15.2 分發(fā)糖果 204
15.3 0-1背包問(wèn)題 206
15.4 長(zhǎng)上升子序列 209
第三部分 綜合案例
第16章 綜合應(yīng)用 212
16.1 餐飲服務(wù)質(zhì)量調(diào)查 212
16.2 小學(xué)生算術(shù)運(yùn)算訓(xùn)練系統(tǒng) 216
16.3 青年歌手大獎(jiǎng)賽現(xiàn)場(chǎng)分?jǐn)?shù)統(tǒng)計(jì) 222
16.4 隨機(jī)點(diǎn)名系統(tǒng) 227
16.5 基于turtle庫(kù)的圖形繪制 232
第17章 游戲設(shè)計(jì) 235
17.1 火柴游戲 235
17.2 文曲星猜數(shù)游戲 238
17.3 2048數(shù)字游戲 240
17.4 貪吃蛇游戲 244
17.5 飛機(jī)大戰(zhàn) 247
17.6 Flappy bird 252
17.7 井字棋游戲 255
17.8 桿子游戲 260
17.9 俄羅斯方塊 264