少兒Python編程培訓手冊系列之——從繪製小任務構建知識層級體系

2021-01-08 向陽花開滿山紅

前面我們分享過Python中海龜庫的基礎知識體系。

少兒Python編程培訓手冊系列之——海龜庫基礎用法

本文從繪製一顆五角星開始,逐級增加難度,學習掌握雙重嵌套循環、函數的定義及使用、以及函數與循環的完美結合——「遞歸思想」在程序中的應用。

01任務一:一顆五角星

繪製一顆五角星,只需要五條線首尾相連,旋轉一定的角度(144°)即可。使用到了前進forward()和右轉right()(或左轉)函數,通過循環可以使代碼更簡潔。參考如下:

這裡採用了while循環,通過count計數器來累計邊數,達到5條邊後退出循環。大家可改寫成for循環試一試,代碼量會更少。

02任務二:重複不同大小的五角星

如果要繪製大小不同的多顆五角星呢?如圖所示:

其實就是把任務一中繪製一個五角星的代碼重複多次執行即可,只需要改變線條的長度即可。

方式一:可以採用嵌套雙重循環

外層循環控制五角星的個數,內層循環控制每次繪製一個五角星。如下:

上述5-9行代碼,是畫筆的初始化設置,讓起始點向左移動200,並設置畫筆顏色為紅色。11-17行代碼,採用雙重嵌套循環,改變每次繪製五角星的線條長度,每次按照20的級數遞增。

為了讓代碼的層次結構更清晰簡潔,可以這樣來優化:

方式二:定義函數,封裝繪製五角星的代碼

上圖中前四行的代碼,以def開頭的部分,就是繪製五角星函數的定義部分,函數名:wujiaoxing(),傳入了一個線條大小size的參數。

中間五行代碼,是畫筆的初始化部分;最後兩行代碼,循環裡面調用函數,讓繪製五角星的功能重複執行10次。也同樣滿足了上述的要求。

03 任務三:函數與循環的結合——遞歸思想

再增加一點難點,就是不用我們常規使用的while或for循環,也能實現上述任務二的功能。

如何做到呢?編寫遞歸函數。

遞歸:函數定義中調用函數自身的方式稱為遞歸。這種方式能夠非常簡潔的解決重複問題。

5-13行代碼,就是採用遞歸思想定義的重複繪製五角星的函數。先繪製起始大小的五角星(50);改變線條長度,按照20的基數遞增;在大小滿足條件的情況下,調用自身重複繪製,以達到循環的效果。

切記!遞歸函數中必須構建結束條件,否則程序就變成了死循環(無限循環)。

還需要注意:

每次函數調用時,函數參數會臨時存儲,相互沒有影響。

達到終止條件時,各函數逐層結束運算,返回計算結果,其實就是一種倒推模式。

題外話學習Python的經驗和方法

1、 多動手,多驗證,多思考,多實踐;

2、 學會使用搜尋引擎;

3、 放輕鬆,多犯錯。 犯錯誤是很正常的,在錯誤中可以學習到更多。

相關焦點

  • 少兒Python編程培訓手冊系列之——循環結構梳理
    其他相關參考資料:少兒Python編程培訓手冊系列之——變量及輸入輸出函數少兒Python編程培訓手冊系列之——運算符和表達式少兒Python編程培訓手冊系列之——條件結構梳理
  • 少兒Python編程培訓手冊系列之——海龜庫基礎用法
    對於少兒編程來說,最有趣的莫過於繪圖了,海龜庫模塊就是最好的也是最基礎的繪圖工具。本文整理收集匯總了一些常見的繪圖函數,結合前面系列文章的Python基礎語法知識,再加上一些經典的案例,使用「小海龜」創作就是小菜一碟了。
  • 少兒Python編程培訓手冊系列之——函數的定義及遞歸思想
    有了函數:模塊化編程,可以使代碼的層次更清晰。函數分系統函數(內置函數、內建函數)和自定義函數。01系統函數系統函數,也叫內置函數或內建函數,也就是軟體的開發人員已經定義好的函數,我們只需要拿過來使用就可以了。
  • 北京朝陽Python少兒編程培訓機構哪家靠譜?
    成立多年以來,在國內先後成立近500家學習中心,憑藉完善的課程體系、可帶回家的進口教具、開放的教學方式、國際化的賽事體系、周到的教育服務獲得16萬學生家長的認可與青睞,並且還在持續以每年35%左右的增幅增長。孩子學習編程有什麼用?
  • 鄭州金水Python少兒編程培訓班多少錢?
    能力的提升編程知識對標青少年編程能力等級第2部分:Python編程。學習樂博樂博Python基礎語法知識,包括順序結構、循環結構、分支結構的語法規則,教授孩子更多的源碼編程技巧,讓孩子逐步適應源碼編程的方式。
  • 重慶南岸Python少兒編程課程價格
    少兒編程教育具備綜合能力,符合未來時代發展需求。少兒編程學習並不僅僅是編程知識填充,重要的是編程思維,有利於提升孩子創新意識,發現問題,結合實際發揮聯想能力,設計出更多優質的產品。樂博樂博教育經營理念樂博Python少兒編程教學方式小班教學我們的課程是小班直播教學,同時我們儘可能保留了線下課堂的場景,讓學生之間可以互相討論問題,互相學習,合作完成任務。
  • 少兒Python編程培訓手冊系列之——平面圖形繪製的基本思路
    在Python中使用海龜庫(turtle)繪製平面圖形,就類似於駕馭「小海龜」汽車,遨遊在Python世界的畫布上,同樣也需要三步操作。首先,需要掌握基本的繪圖命令和流程控制語句。小海龜默認起始點在坐標原點(0,0),方向向右(0°方向)。大家要對坐標系的四個象限以及小海龜方向的指向非常熟悉。
  • 晉中ScratchJr少兒編程培訓
    孩子們可以利用繪圖編輯器繪製自己喜歡的角色,用麥克風錄製自己聲音,用照相機加入自己拍攝的照片。最後用積木的方法組合成程序,讓他們的角色動起來。 ScratchJr這個軟體的創作靈感來自Scratch。在全球有數以百萬計的小朋友(8歲以上)使用Scratch,是個非常受歡迎的程式語言。
  • 南京雨花Python少兒編程課程價格要多少?
    樂博樂博Python課程優勢科學的體系樂博樂博Python課程是參考CSTA美國計算機科學教育標準,使用人工智慧時代廣泛的程式語言Python,採用圖形+源碼對照的編程模式,逐步讓孩子過渡到源碼編程的世界。適合10-13歲孩子學習編程。
  • 杭州少兒編程培訓機構哪家好?少兒編程Python語言好學嗎
    Python編程是什麼?Python編程課程是少兒編程課程學習過程中不可缺少的一部分,孩子通過Python學習能夠規範性的幫助孩子加深對少兒編程課程內容的學習。少兒編程Python語言好學嗎Python語言好學嗎我們都知道,在當下這個大數據時代,要想走在時代的前沿,就必須學習先進有用的知識。
  • 西安雁塔少兒編程Python10-16歲哪家好?
    樂博樂博Python課程優勢科學的體系樂博樂博Python課程是參考CSTA美國計算機科學教育標準,使用人工智慧時代廣泛的程式語言Python,採用圖形+源碼對照的編程模式,逐步讓孩子過渡到源碼編程的世界。適合10-13歲孩子學習編程。
  • 北京西城Python少兒編程班價格高嗎?
    少兒編程教育具備綜合能力,符合未來時代發展需求。少兒編程學習並不僅僅是編程知識填充,重要的是編程思維,有利於提升孩子創新意識,發現問題,結合實際發揮聯想能力,設計出更多優質的產品。樂博樂博教育經營理念樂博Python少兒編程教學方式小班教學我們的課程是小班直播教學,同時我們儘可能保留了線下課堂的場景,讓學生之間可以互相討論問題,互相學習,合作完成任務。
  • 廣州越秀Python少兒編程培訓班收費要多少?
    少兒編程教育具備綜合能力,符合未來時代發展需求。少兒編程學習並不僅僅是編程知識填充,重要的是編程思維,有利於提升孩子創新意識,發現問題,結合實際發揮聯想能力,設計出更多優質的產品。樂博樂博教育經營理念樂博Python少兒編程教學方式小班教學我們的課程是小班直播教學,同時我們儘可能保留了線下課堂的場景,讓學生之間可以互相討論問題,互相學習,合作完成任務。
  • 西安雁塔Python少兒編程課一節多少錢?
    少兒編程教育具備綜合能力,符合未來時代發展需求。少兒編程學習並不僅僅是編程知識填充,重要的是編程思維,有利於提升孩子創新意識,發現問題,結合實際發揮聯想能力,設計出更多優質的產品。樂博樂博教育經營理念樂博Python少兒編程教學方式小班教學我們的課程是小班直播教學,同時我們儘可能保留了線下課堂的場景,讓學生之間可以互相討論問題,互相學習,合作完成任務。
  • 武漢江岸Python少兒編程課一節多少錢?
    少兒編程教育具備綜合能力,符合未來時代發展需求。少兒編程學習並不僅僅是編程知識填充,重要的是編程思維,有利於提升孩子創新意識,發現問題,結合實際發揮聯想能力,設計出更多優質的產品。樂博樂博教育經營理念樂博Python少兒編程教學方式小班教學我們的課程是小班直播教學,同時我們儘可能保留了線下課堂的場景,讓學生之間可以互相討論問題,互相學習,合作完成任務。
  • 廣州荔灣Python少兒編程課一節多少錢?
    少兒編程教育具備綜合能力,符合未來時代發展需求。少兒編程學習並不僅僅是編程知識填充,重要的是編程思維,有利於提升孩子創新意識,發現問題,結合實際發揮聯想能力,設計出更多優質的產品。樂博樂博教育經營理念樂博Python少兒編程教學方式小班教學我們的課程是小班直播教學,同時我們儘可能保留了線下課堂的場景,讓學生之間可以互相討論問題,互相學習,合作完成任務。
  • 編程思維才是學習少兒編程培訓的關鍵
    「孩子需要學編程嗎?」「需要,因為有必要培養孩子的編程思維,領會這種新的思維對孩子在成長過程中遇到問題時能夠提供新思路,對於解決問題會有啟發性的意義。邏輯思維培養可以引導孩子發現問題、解決問題,以後不能保證每個人都會編程,但每個人都或多或少了解編程。所以當孩子獲取的知識多的時候就會有不一樣的廣闊天地。」
  • 瀋陽皇姑Python少兒編程學習班怎樣?
    與一般的機器人教學不同,樂博樂博的課程不僅教孩子如何組裝機器人,還教他們如何控制機器人,也就是說,課程還將學習與編程相關的內容。樂博老師系統教學,經過循序漸進、寓教於樂的教學,幫助孩子們輕鬆學習知識、掌握技能。
  • 少兒編程課程體系不完善 如何才能駛向新「藍海」
    課程豐富缺體系,教學生動難評估樂高機器人編程,空間構建大顆粒、小顆粒,單片機,軟體編程……走訪中記者發現,國內少兒編程課程種類相對豐富,可以滿足3至18歲少年兒童不同層次的學習需求。為了滿足學生參加國內外各種編程賽事的需求,不少機構還開設了專門的競賽培訓班。
  • 鄭州金水少兒編程Python10-16歲哪家好?
    樂博樂博Python課程優勢科學的體系樂博樂博Python課程是參考CSTA美國計算機科學教育標準,使用人工智慧時代廣泛的程式語言Python,採用圖形+源碼對照的編程模式,逐步讓孩子過渡到源碼編程的世界。適合10-13歲孩子學習編程。