本書旨在引導孩子們通過解決日常生活中的問題,學習Python的基礎知識,了解數(shù)據(jù)、信息之間的相互關系。
本書主要分為兩大部分,第一部分介紹 Python 的基礎知識,第二部分是Python 競賽題精講與練習。本書通過通俗易懂的語言和形象生動的插圖,幫助孩子快速掌握和理解Python的基礎知識,逐步培養(yǎng)編程思維。
本書適合想要學習Python的孩子們,也適合老師、家長與孩子一起閱讀學習。
1.從基礎知識開始,通過有趣的編程案例,幫助孩子們通過生活中的問題更好地理解 Python 編程的概念和原理。
2.擁有豐富海外STEM課程和編程競賽教學經(jīng)驗的團隊精心編寫,內容清晰易懂,配合插圖形象生動,適合所有想要學習編程的孩子們。
2.配有大量的競賽實戰(zhàn)習題,有效提高孩子的編程技能,培養(yǎng)邏輯思考能力和創(chuàng)造力,做到夯實基礎、學以致用。
3.配套PPT+講解視頻,適合想要學習Python的孩子們閱讀,對于想讓孩子接受編程教育的家長來說,是一個不錯的選擇。
無界少年
由一群有著教育情懷的硅谷工程師、資深 IT 專家創(chuàng)立的工作室。課程設計團隊有豐富的海外 STEM 課程以及編程競賽教學經(jīng)驗,可以為學校、機構輸送前沿的全球化課程。設計的課程已經(jīng)在上海、江蘇等地的多所重點中小學落地,深受學生好評。
陳義
上海市計算技術研究所碩士研究生導師。長期從事計算機軟件領域的科研、教學、科普和科技服務工作。負責和參與過科技部、上海市科學技術委員會、上?破战逃l(fā)展基金會等的專項課題,涉及電子政務、大數(shù)據(jù)、人工智能、少兒編程等方向。發(fā)表過多篇核心期刊論文。
劉昆
畢業(yè)于上海交通大學軟件學院。長期從事大學生算法競賽培訓,擁有近 20 年編程教學經(jīng)驗。藍橋杯 C++ 大學生B組特等獎指導老師,APIO(亞洲和太平洋地區(qū)信息學奧林匹克競賽)金牌教練,USACO(美國信息學奧林匹克競賽)鉑金滿分教練。
劉未昕
從事 IT 研發(fā)和項目管理工作 15 年以上。擁有 5 年以上 IT 行業(yè)授課、培訓經(jīng)驗,并在多所高校擔任外聘講師。使用 Python、Java 等多種編程語言,深耕于大數(shù)據(jù)、人工智能等領域。著有《Python 入門到人工智能實戰(zhàn)》《自己動手做大數(shù)據(jù)系統(tǒng)》。
黃盛
無界少年工作室聯(lián)合創(chuàng)始人,上海市青少年科技輔導員。多年來致力于 8~16 歲孩子的編程課程開發(fā)和教學。
目 錄
第 一部分 Python的基礎知識 001
第1章 蓄滿能量,準備出發(fā) 002
1.1 Python的歷史 002
1.2 Python的特點 003
1.3 Python的廣泛應用 003
1.4 Python的安裝環(huán)境 004
1.5 編譯自己的第 一個小程序 005
第2章 變量和數(shù)字的那些事 007
2.1 變量——保存內容的地方 007
2.1.1 變量的定義 007
2.1.2 變量的賦值 008
2.2 數(shù)據(jù)類型(整數(shù)、浮點數(shù)) 010
2.3 算術運算符和賦值運算符 011
2.3.1 Python中的算術運算符 011
2.3.2 Python中的數(shù)學運算 012
2.3.3 Python中的賦值運算符 013
2.3.4 小實踐:用Python運算符來編程 014
2.4 編程習題 016
第3章 條件大作戰(zhàn) 017
3.1 認識if語句 018
3.1.1 True和False 019
3.1.2 if語句實例 022
3.2 else語句 023
3.2.1 if-else語法 024
3.2.2 if-else實例 024
3.3 elif語句 025
3.3.1 if-elif-else語法 025
3.3.2 if-elif-else實例 027
3.4 if語句嵌套與邏輯運算符 028
3.4.1 if語句嵌套實例 029
3.4.2 邏輯運算符 030
3.5 編程習題 031
第4章 循環(huán)很有趣 034
4.1 for循環(huán) 035
4.2 while循環(huán) 044
4.3 循環(huán)控制語句 049
4.4 循環(huán)嵌套 053
4.4.1 while循環(huán)中嵌套while循環(huán) 054
4.4.2 for循環(huán)中嵌套for循環(huán) 056
4.5 編程習題 060
第5章 優(yōu)雅的“記憶方式” 061
5.1 序列 062
5.2 序列的常用操作 062
5.2.1 索引 063
5.2.2 切片 064
5.2.3 相加 065
5.2.4 相乘 065
5.2.5 成員判別 066
5.2.6 內置函數(shù) 067
5.3 列表 067
5.3.1 list()函數(shù) 067
5.3.2 列表的基本操作 068
5.3.3 列表方法 069
5.4 元組 076
5.5 字符串 077
5.6 編程習題 080
第6章 函數(shù)是什么 081
6.1 為什么要使用函數(shù) 081
6.2 函數(shù)語法定義 083
6.3 程序執(zhí)行過程 084
6.3.1 代碼塊 084
6.3.2 程序執(zhí)行順序 085
6.4 簡單函數(shù)調用 087
6.4.1 如何執(zhí)行函數(shù) 087
6.4.2 函數(shù)嵌套調用 087
6.4.3 函數(shù)嵌套定義 089
6.5 帶參數(shù)的函數(shù) 090
6.5.1 如何使用函數(shù)的參數(shù) 090
6.5.2 參數(shù)的賦值方式 091
6.5.3 變量的定義 092
6.5.4 形式參數(shù)和實際參數(shù) 094
6.5.5 參數(shù)的生命周期 095
6.6 帶返回值的函數(shù) 096
6.6.1 return語句 096
6.6.2 函數(shù)返回值 097
6.7 內置函數(shù) 099
6.8 模塊的定義和使用 099
6.8.1 把雞蛋放到籃子里 099
6.8.2 函數(shù)、模塊與包 100
6.9 遞歸函數(shù) 102
6.10 編程習題 103
第7章 Python常用模塊 104
7.1 日期和時間模塊 105
7.2 數(shù)學模塊 107
7.3 隨機數(shù)模塊 109
7.4 Pygame 110
7.4.1 Pygame安裝及驗證 111
7.4.2 計算機繪圖基本知識 112
7.4.3 繪制線段及規(guī)則圖形 117
7.4.4 加載圖片及實現(xiàn)動畫效果 121
7.4.5 事件監(jiān)聽 123
7.5 編程習題 126
第8章 游戲編程 127
8.1 強大的畫圖小工具——turtle 128
8.2 turtle中的基本概念 128
8.3 畫筆的各種設定 131
8.4 繪制正方形、菱形 132
8.5 繪制多邊形和圓形 133
8.6 繪制橢圓 137
8.7 書寫文字 138
8.8 畫一個卡通米奇 140
8.9 開始一個真正的游戲——六點連線 143
第二部分 Python競賽題精講與練習 151
編程習題參考答案 208