案例學(xué)Python:青少年編程從入門到精通
本書分為11個單元,全書安排了58個有趣的編程知識案例,以親切的筆調(diào)、活潑語言介紹了Python少兒編程的相關(guān)知識。內(nèi)容包括:單元1:好玩的新朋友——Python編程入門;單元2:是非分明我知道——判斷與分支;單元3:我是繪畫大師——turtle海龜做圖;單元4:永不停息的循環(huán)——讓程序重復(fù)執(zhí)行;單元5:“裝數(shù)據(jù)的容器”——列表、字典、元組;單元6:“猜大小贏金幣”——random隨機數(shù);單元7:初識圖形化編程——thinter模塊;單元8:通信錄軟件開發(fā)——信息管理入門;單元9:“QQ”聊天軟件——Python網(wǎng)絡(luò)通信;單元10:“全民打磚塊”——面向?qū)ο缶幊倘腴T;單元11:星球大戰(zhàn)游戲編程——綜合項目開發(fā)。并且每章末尾“編程挑戰(zhàn)”和“單元小結(jié)”,拓展讀者的思維,鞏固學(xué)習(xí)的知識和技能。
通過本書的學(xué)習(xí),可以幫助孩子學(xué)習(xí)計算機的思維方式,可視化和游戲為主的例子則提高孩子的學(xué)習(xí)興趣和注意力。本書是寫給孩子看的Python編程書,也可以作為少兒編程的教材參考用書。
賈煒,高級工程師,擁有多年IT技術(shù)開發(fā)經(jīng)驗,對多種開發(fā)語言都有深入研究,專注于python人工智能開發(fā)領(lǐng)域,數(shù)據(jù)分析,機器學(xué)習(xí)等;同時長期兼職青少年steam教育培訓(xùn)工作,有豐富的教育培訓(xùn)經(jīng)驗。
單元1 好玩的新朋友——Python編程入門
1.1 IDLE 軟件的使用 3
1.2 打印輸出—— print 函數(shù) 6
案例 1 編程輸出李白的《靜夜思》 8
1.3 裝數(shù)據(jù)的盒子—— 變量 9
1.4 常見的數(shù)據(jù)類型 10
1.5 獲取鍵盤輸入—— input 函數(shù) 12
案例 2 程序?qū)δ阏f“hello” 14
1.6 數(shù)據(jù)類型轉(zhuǎn)換 15
1.7 字符串的運算 19
案例 3 編個計算器 22
1.8 函數(shù) 23
·編程過關(guān)挑戰(zhàn)· ——輸出任意字符組成的菱形 29
單元2 是非分明我知道——判斷與分支
2.1 Python 中的關(guān)系運算符 34
2.2 True 還是 False 34
2.3 二分支 36
案例 4 判斷奇偶數(shù) 37
2.4 多分支 39
案例 5 由身高確定買全價票、半價票還是免票 39
2.5 and(并且) 41
案例 6 放假去哪兒游玩 42
2.6 or(或者) 44
案例 7 階梯電價怎么算 45
·編程過關(guān)挑戰(zhàn)· ——雞兔同籠,雞兔多少怎么算 47
單元3 我是繪畫大師——turtle海龜做圖
3.1 模塊 51
3.2 小海龜前進—— forward 函數(shù) 52
3.3 隱藏“小海龜”—— hideturtle 函數(shù) 53
3.4 小海龜轉(zhuǎn)向—— left 和 right 函數(shù) 54
案例 8 畫個正方形 56
3.5 正多邊形內(nèi)角和計算 58
案例 9 畫個正六邊形 58
3.6 小海龜轉(zhuǎn)圈圈—— circle 函數(shù) 60
3.7 正多邊形的簡單畫法 61
3.8 畫筆變顏色 62
3.9 給圖形填充顏色 62
案例 10 閃閃的紅星 63
3.10 繪制多個圖形 65
案例 11 兩個圓形 65
·編程過關(guān)挑戰(zhàn)· ——繪制奧運五環(huán)標志 67
單元4 永不停息的循環(huán)——讓程序重復(fù)執(zhí)行
4.1 循環(huán)的奧秘 73
4.2 for 循環(huán) 73
案例 12 輸出 a 行 b 74
案例 13 畫個“太陽花” 75
案例 14 對整數(shù) 1 ~ 100 累加求和 76
案例 15 對 1 ~ 100 中的奇數(shù)累加求和 78
4.3 while 循環(huán) 79
案例 16 可循環(huán)使用的計算器 79
4.4 break——退出整個循環(huán) 81
案例 17 計算器的安全退出 82
4.5 continue——終止本次循環(huán) 83
4.6 while 實現(xiàn)有限循環(huán) 84
案例 18 組合數(shù)字 85
案例 19 對 100 以內(nèi)質(zhì)數(shù)進行求和 87
·編程過關(guān)挑戰(zhàn)· ——棋盤麥粒知多少 88
單元5 “裝數(shù)據(jù)的容器”——列表、字典、元組
5.1 列表 93
案例 20 學(xué)生名字管理 100
案例 21 繪制眩暈圖 101
5.2 字典 103
案例 22 學(xué)生信息管理 110
5.3 元組 112
·編程過關(guān)挑戰(zhàn)· ——斐波那契數(shù)列 114
單元6 “猜大小,贏金幣”——random模塊
6.1 random 模塊簡介 119
6.2 隨機整數(shù)——randint 函數(shù) 119
案例 23 搖骰子 119
案例 24 看誰猜得快 121
6.3 隨機小數(shù)——uniform 函數(shù) 122
6.4 有規(guī)律的隨機數(shù)——randrange 函數(shù) 124
6.5 隨機字符串——choice 函數(shù) 125
案例 25 和電腦玩猜拳 126
6.6 打亂列表——shuffle 函數(shù) 128
6.7 隨機字符串——sample 函數(shù) 129
案例 26 來注雙色球 130
案例 27 璀璨星空 132
·編程過關(guān)挑戰(zhàn)· ——“猜大小,贏金幣”游戲 135
單元7 初識圖形化編程——tkinter模塊
7.1 tkinter 模塊簡介 146
案例 28 創(chuàng)建計算器的界面 146
案例 29 創(chuàng)建計算器的輸入框 147
案例 30 給計算器輸入框加個名字 149
案例 31 計算結(jié)果 151
案例 32 開發(fā)“全能計算器” 154
7.2 程序打包 158
·編程過關(guān)挑戰(zhàn)· ——開發(fā)自帶按鍵的計算器 160
單元小結(jié) 164
單元 8 信息管理入門——通訊錄軟件開發(fā)
8.1 數(shù)據(jù)的長久保存——文件 167
8.2 文件的創(chuàng)建 168
8.3 文件的寫入 168
8.4 文件的讀取 170
8.5 通訊錄軟件介紹 172
案例 33 搭建軟件框架 172
案例 34 添加聯(lián)系人 174
案例 35 查找聯(lián)系人 177
案例 36 刪除聯(lián)系人 181
案例 37 查看所有聯(lián)系人 185
·編程過關(guān)挑戰(zhàn)· ——使用文件保存聯(lián)系人信息 189
單元9 Python網(wǎng)絡(luò)通信——聊天軟件開發(fā)
9.1 PyCharm 軟件的使用 198
9.2 網(wǎng)絡(luò)通信基礎(chǔ)知識 200
案例 38 創(chuàng)建簡單的服務(wù)器 204
案例 39 創(chuàng)建簡單客戶端 206
案例 40 一對一的網(wǎng)絡(luò)通信 208
9.3 程序中的“服務(wù)員”——線程 214
案例 41 加入多線程的聊天軟件 217
·編程過關(guān)挑戰(zhàn)· ——圖形化聊天軟件開發(fā) 224
單元10 面向?qū)ο缶幊倘腴T——“全民打磚塊”
10.1 面向?qū)ο蠡A(chǔ) 236
10.2 類的創(chuàng)建 236
案例 42 創(chuàng)建游戲窗口 237
案例 43 創(chuàng)建一個小球類 239
案例 44 自由運動的小球 241
案例 45 創(chuàng)建球拍類 243
案例 46 球拍“動起來” 246
案例 47 球拍接小球 250
案例 48 磚塊類的創(chuàng)建 253
案例 49 “打掉磚塊” 257
案例 50 設(shè)置“通關(guān)”與否 261
·編程過關(guān)挑戰(zhàn)· ——兩個小球“打磚塊” 266
單元11 綜合項目開發(fā)——“星球大戰(zhàn)”游戲
11.1 pygame 模塊介紹與安裝 274
11.2 游戲開發(fā)準備 277
案例 51 創(chuàng)建游戲界面 277
案例 52 打造“地球衛(wèi)士” 279
案例 53 駕駛飛機 282
案例 54 外星人來襲 286
案例 55 準備子彈 291
案例 56 射擊外星人飛機 296
案例 57 我方飛機被外星人飛機沖撞 301
·編程過關(guān)挑戰(zhàn)· ——設(shè)置飛機的生命值 302
單元小結(jié) 303
附錄 A Python IDLE 的安裝方法 304
附錄 B PyCharm 的安裝方法 307