Python簡單易學(xué),功能強(qiáng)大,是少兒學(xué)習(xí)編程的首選語言。本書是少兒學(xué)習(xí)Python編程的趣味指南,全書共17章,按照由簡到難、逐步深入的方式組織各章內(nèi)容。本書從認(rèn)識Python開始,首先介紹了Python的安裝和IDLE的使用,然后依次介紹了變量、數(shù)字和字符串、列表、元組和字典、布爾類型等數(shù)據(jù)類型,以及條件、循環(huán)、異常和注釋、函數(shù)、面向?qū)ο缶幊獭⑽募僮鞯然A(chǔ)知識,并且通過實(shí)際案例講解了海龜繪圖、Pygame基礎(chǔ)和游戲編程,以及Python在自然語言處理方面的應(yīng)用。
本書精心選取內(nèi)容,注重難易適度和趣味性,語言通俗易懂,代碼示例豐富。在多章的末尾,還給出了一些練習(xí)題并給出了解答。本書適合想要學(xué)習(xí)Python編程基礎(chǔ)的少兒(尤其是10歲以上的孩子)及想要教孩子學(xué)習(xí)編程的家長閱讀,也適合少兒編程培訓(xùn)班的老師用作少兒編程培訓(xùn)的教材。
《Python少兒趣味編程》由少兒編程暢銷圖書作者精心編寫,是少兒學(xué)習(xí)Python編程的趣味指南,全書共17章,按照由簡到難、逐步深入的方式組織各章內(nèi)容!禤ython少兒趣味編》精心選取內(nèi)容,注重難易適度,語言通俗易懂,代碼示例豐富。在每章的末尾,還給出了一些練習(xí)題并給出了解答。
《Python少兒趣味編程》具有以下特色:
● 精心選取和組織內(nèi)容,注重難易適度——涵蓋基礎(chǔ)知識、趣味應(yīng)用和熱門應(yīng)用。
● 堅(jiān)持“做中學(xué)”的理念和方法——通過詳細(xì)的示例和課后練習(xí)幫助讀者學(xué)習(xí)和掌握。
● 體現(xiàn)趣味性——用海龜繪圖繪制的機(jī)器貓、小豬佩奇等卡通角色,編寫貪吃蛇游戲,對古典名著《西游記》分詞。
● 增強(qiáng)可拓展性——逐步擴(kuò)展和改進(jìn)的“成績單”示例程序,章末習(xí)題既鞏固知識,也拓展編程技能。
《Python少兒趣味編》適合想要學(xué)習(xí)Python 編程基礎(chǔ)的少年兒童(尤其是10 歲以上的孩子)及想要教孩子學(xué)習(xí)編程的家長閱讀,也適合少兒編程培訓(xùn)班的老師用作少兒編程培訓(xùn)的教材。
本書帶領(lǐng)讀者編寫的趣味程序包括:
● 幫Johnson 找到回家的路;
● 逐步擴(kuò)展和改進(jìn)的“成績單”示例程序;
● 用海龜繪圖繪制的機(jī)器貓;
● 用海龜繪圖繪制小豬佩奇;
● 彈球游戲;
● 編寫貪吃蛇游戲;
● 對古典名著《西游記》分詞。
李強(qiáng)
計(jì)算機(jī)圖書作家和譯者,曾是計(jì)算機(jī)領(lǐng)域的講師,從2002 年開始進(jìn)行計(jì)算機(jī)編程的網(wǎng)絡(luò)授課。目前專注于青少年計(jì)算機(jī)領(lǐng)域的教學(xué),其編著的《Scratch 3.0
少兒游戲趣味編程》和《Scratch 3.0 少兒編程趣味課》是該領(lǐng)域的暢銷書,配套的教學(xué)視頻也得到了讀者的喜愛?申P(guān)注公眾號“李強(qiáng)老師的編程課堂”聯(lián)系作者,以獲得更多支持和幫助。
李若瑜
五年級小學(xué)生。他為本書中的示例和場景貢獻(xiàn)了寫作創(chuàng)意。作為本書的第一位小讀者和示例的測試者,他給出了寶貴的改進(jìn)意見和建議。對Scratch 編程有濃厚興趣。
目錄
第 1章 認(rèn)識Python 1
1.1 編程語言和Python 1
1.1.1 程序設(shè)計(jì)和編程語言 1
1.1.2 Python簡介 2
1.2 Python的安裝 4
1.2.1 Windows下的Python安裝 4
1.2.2 MAC下的Python安裝 8
1.3 第 一個(gè)程序Hello World 11
1.4 開發(fā)工具IDLE 12
1.4.1 IDLE簡介 12
1.4.2 用IDLE編寫程序 12
1.4.3 IDLE的其他功能 16
1.5 小結(jié) 18
第 2章 變量、數(shù)字和字符串 19
2.1 變量 19
2.1.1 變量的命名規(guī)則 20
2.1.2 多個(gè)變量賦值 22
2.1.3 增量賦值 22
2.2 數(shù)字 22
2.2.1 整數(shù)和數(shù)學(xué)運(yùn)算 22
2.2.2 浮點(diǎn)數(shù) 24
2.3 字符串 24
2.3.1 連接字符串 26
2.3.2 內(nèi)置函數(shù) 26
2.3.3 字符串的方法 27
2.4 數(shù)據(jù)類型轉(zhuǎn)換 27
2.4.1 str()函數(shù) 28
2.4.2 int()函數(shù) 28
2.4.3 float()函數(shù) 28
2.5 成績單 29
2.6 小結(jié) 30
2.7 練習(xí) 30
第3章 列表 31
3.1 什么是列表 31
3.2 創(chuàng)建列表 32
3.3 訪問列表元素 32
3.4 設(shè)置和修改列表中的元素 34
3.4.1 修改列表元素 34
3.4.2 添加列表元素 34
3.4.3 刪除列表元素 36
3.5 使用列表 37
3.5.1 獲取列表的長度 37
3.5.2 查找列表中單個(gè)元素的索引 38
3.5.3 使用sort()方法對列表排序 38
3.5.4 用reverse()方法反轉(zhuǎn)列表 39
3.6 字符串和列表的相互轉(zhuǎn)換 39
3.6.1 列表轉(zhuǎn)換成字符串 39
3.6.2 字符串轉(zhuǎn)換成列表 40
3.7 列表的用途 40
幫Johnson找到回家的路 40
3.8 成績單 41
3.9 小結(jié) 45
3.10 練習(xí) 46
第4章 元組和字典 47
4.1 元組 47
4.1.1 創(chuàng)建元組 47
4.1.2 修改元組變量 48
4.1.3 使用元組 48
4.2 字典 50
4.2.1 創(chuàng)建字典 50
4.2.2 修改和新增字典中的值 51
4.2.3 刪除鍵—值對 52
4.2.4 返回指定鍵的值 52
4.2.5 字典和列表的互相轉(zhuǎn)換 53
4.3 成績單 54
4.4 小結(jié) 59
4.5 練習(xí) 59
第5章 布爾類型 60
5.1 比較運(yùn)算符 61
5.1.1 等于(==) 61
5.1.2 不等于(!=) 62
5.1.3 大于(>)和大于等于(>=) 62
5.1.4 小于(<)和小于等于(<=) 62
5.2 布爾運(yùn)算符 63
5.2.1 and(與) 63
5.2.2 或(or) 63
5.2.3 not(非) 64
5.2.4 組合布爾運(yùn)算符 64
5.3 小結(jié) 65
5.4 練習(xí) 65
第6章 條件語句 66
6.1 縮進(jìn) 67
6.1.1 縮進(jìn)的長度 68
6.1.2 常見的縮進(jìn)問題 69
6.2 if語句 71
6.3 else語句 72
6.4 elif語句 73
6.5 成績單 74
6.6 小結(jié) 77
6.7 練習(xí) 77
第7章 循環(huán) 78
7.1 while循環(huán) 79
7.1.1 while循環(huán)示例 79
7.1.2 無止盡的while循環(huán) 81
7.1.3 break語句 82
7.1.4 continue語句 83
7.2 for循環(huán) 84
7.3 成績單 87
7.4 小結(jié) 97
7.5 練習(xí) 97
第8章 異常和注釋 98
8.1 異常處理 98
8.1.1 什么是異!98
8.1.2 如何處理異!100
8.2 注釋 102
8.3 成績單 103
8.4 小結(jié) 107
8.5 練習(xí) 107
第9章 自定義函數(shù) 108
9.1 函數(shù)的基本結(jié)構(gòu) 109
9.2 調(diào)用函數(shù)的方法 109
9.3 函數(shù)的參數(shù) 110
9.4 函數(shù)的返回值 110
9.5 成績單 111
9.6 小結(jié) 116
9.7 練習(xí) 116
第 10章 面向?qū)ο缶幊獭?17
10.1 類和對象 118
10.2 給對象添加方法 119
10.3 使用構(gòu)造方法創(chuàng)建對象 120
10.4 繼承 121
10.5 成績單 124
10.6 小結(jié) 128
10.7 練習(xí) 128
第 11章 文件操作 129
11.1 打開文件 130
11.2 讀取文件 130
11.3 寫入文件 132
11.4 成績單 133
11.5 小結(jié) 140
11.6 練習(xí) 140
第 12章 海龜繪圖 141
12.1 模塊 141
12.1.1 什么是模塊 141
12.1.2 導(dǎo)入模塊 142
12.2 turtle模塊 143
12.2.1 創(chuàng)建畫布 143
12.2.2 移動海龜 144
12.2.3 畫筆控制 146
12.2.4 色彩 148
12.3 小結(jié) 150
12.4 練習(xí) 150
第 13章 繪制機(jī)器貓 151
13.1 程序分析 151
13.2 導(dǎo)入模塊和設(shè)置畫筆 152
13.3 基礎(chǔ)函數(shù) 152
13.3.1 繪制圓形 152
13.3.2 繪制矩形 153
13.4 繪制機(jī)器貓的身體 154
13.4.1 head()函數(shù) 154
13.4.2 eyes()函數(shù) 154
13.4.3 nose()函數(shù) 156
13.4.4 mouth()函數(shù) 156
13.4.5 whiskers()函數(shù) 157
13.4.6 body()函數(shù) 158
13.4.7 feet()函數(shù) 159
13.4.8 arms()函數(shù) 160
13.4.9 hands()函數(shù) 161
13.4.10 bell()函數(shù) 162
13.4.11 package()函數(shù) 163
13.5 小結(jié) 164
第 14章 繪制小豬佩奇 165
14.1 程序分析 165
14.2 繪制弧線和橢圓 166
14.3 導(dǎo)入turtle模塊 167
14.4 繪制程序 168
14.4.1 設(shè)置畫布和畫筆 168
14.4.2 nose()函數(shù) 168
14.4.3 head()函數(shù) 169
14.4.4 ears()函數(shù) 170
14.4.5 eyes()函數(shù) 171
14.4.6 cheek()函數(shù) 172
14.4.7 mouth()函數(shù) 173
14.4.8 body()函數(shù) 174
14.4.9 hands()函數(shù) 174
14.4.10 feet()函數(shù) 175
14.4.11 tail()函數(shù) 176
14.5 小結(jié) 177
第 15章 Pygame基礎(chǔ) 178
15.1 Pygame的安裝 178
15.2 Pygame窗口 181
15.3 使用Pygame繪圖 184
15.3.1 Pygame的坐標(biāo)系 184
15.3.2 顏色 185
15.3.3 繪圖函數(shù) 185
15.4 動畫 191
15.4.1 加載圖片 191
15.4.2 移動起來 192
15.4.3 碰撞檢測 194
15.4.4 設(shè)置幀速率 196
15.5 字體 197
15.6 事件 199
15.6.1 鍵盤事件 199
15.6.2 鼠標(biāo)事件 202
15.7 聲音 203
15.8 彈球游戲 204
15.9 小結(jié) 207
15.10 練習(xí) 207
第 16章 貪吃蛇 208
16.1 程序分析 209
16.1.1 地圖 209
16.1.2 程序界面 209
16.1.3 自定義函數(shù) 209
16.1.4 事件 210
16.1.5 聲音 210
16.2 導(dǎo)入模塊 210
16.3 初始化設(shè)置 210
16.3.1 定義顏色變量 210
16.3.2 定義方向變量 211
16.3.3 定義窗口大小 211
16.3.4 定義地圖大小 211
16.3.5 其他變量 211
16.4 基礎(chǔ)函數(shù) 211
16.4.1 main()函數(shù) 211
16.4.2 startGame()函數(shù) 213
16.4.3 runGame()函數(shù) 214
16.4.4 drawFood()函數(shù) 216
16.4.5 drawSnake()函數(shù) 217
16.4.6 drawScore()函數(shù) 217
16.4.7 moveSnake()函數(shù) 218
16.4.8 isEattingFood()函數(shù) 219
16.4.9 isAlive()函數(shù) 219
16.4.10 gameOver()函數(shù) 220
16.4.11 terminate()函數(shù) 221
16.4.12 調(diào)用入口函數(shù) 222
16.5 小結(jié) 222
第 17章 Python的AI應(yīng)用——以自然語言處理為例 223
17.1 人工智能技術(shù)簡介 223
17.2 Python——人工智能的語言 224
17.3 jieba庫使用 226
17.3.1 jieba庫的安裝 226
17.3.2 分詞 227
17.4 對《西游記》進(jìn)行分詞 229
17.4.1 讀取文件 229
17.4.2 《西游記》的分詞 229
17.5 篩選長度為1的詞語 232
17.6 去除不需要的詞語 233
17.7 合并人名 235
17.8 用詞云庫(wordcloud)表示 237
17.9 小結(jié) 242
17.10 練習(xí) 242