從積木到文字:適合 9-12 歲孩童的 Scratch 到 Python 轉換指南
一份逐步指南,幫助孩童從 Scratch 積木轉向真實 Python 代碼,搭配具體練習與常見陷阱。
曾經打造過幾個 Scratch 專案的孩童,通常在 10 或 11 歲左右會遇到瓶頸:積木對他們想製作的東西來說太簡單了。這個瓶頸實際上正是介紹 Python 的最佳時機。本指南提供一條路徑,保留孩童已經理解的 Scratch 部分(精靈、迴圈、事件),並將它們對應到實際代碼,而不是丟給他們毫無橋樑的語法。
為什麼這個轉變感覺比預期更難
Scratch 隱藏了三樣在 Python 中突然變得顯而易見的東西:變數型別、縮排和語法錯誤。一個曾經拖拉「重複 10 次」積木的孩童從未需要想過冒號或括號。用 Python 的第一週主要是學著接受紅色錯誤訊息而不放棄。直接告訴他們:專業程式設計師每天看到數十條錯誤訊息。這不代表他們不擅長寫程式。
使用 Trinket.io 或 Replit 在瀏覽器中執行,這樣就沒有安裝步驟要先對付。等他們上鉤了之後再做桌面安裝(從 python.org 下載 Python 3.12+,加上 Thonny 編輯器)。
直接將 Scratch 概念對應到 Python
並排做這個比較,而不是從零開始:
- 「綠旗按下時」→ 直接執行
.py檔 - 「重複 10 次」→
for i in range(10): - 「無限重複」→
while True: - 「如果 <> 那麼」→
if condition: - 「提問並等待」→
input("question: ") - 變數(橘色積木)→
score = 0
先讓他們寫出這個 Scratch 等效版本,因為這幾乎是直接翻譯:
score = 0
for i in range(5):
score = score + 10
print("Score is now:", score)
執行它,然後問如果 range(5) 變成 range(20) 會發生什麼。在執行代碼前預測輸出是這裡最值得培養的單一習慣。
三個讓學習動力持續的專案
一個數字猜測遊戲是經典的第一個專案,因為它使用 input()、if/elif/else 和迴圈,而且運作得像真正的程式:
import random
secret = random.randint(1, 20)
guess = 0
while guess != secret:
guess = int(input("Guess a number 1-20: "))
if guess < secret:
print("Too low")
elif guess > secret:
print("Too high")
print("You got it!")
一個文字型寵物模擬器(餵食、玩耍、睡眠、檢查狀態)接下來效果不錯,因為孩童已經用 Scratch 精靈服裝做過類似的東西。現在用的是字典:pet = {"hunger": 5, "energy": 8}。
第三個,進入 turtle 圖形以獲得視覺回饋:
import turtle
t = turtle.Turtle()
for i in range(4):
t.forward(100)
t.right(90)
這畫出一個正方形,直接呼應 Scratch 筆工具中的「移動 10 步,轉 90 度」模式。孩童馬上會注意到相似處,這對信心的影響比任何語法講座都來得重要。
處理錯誤而不失動力
預期在第一個月會不斷看到 IndentationError 和 NameError。不要替他們修正——大聲讀出錯誤訊息,一起找出它指向的行號。Python 的錯誤通常會明確說出問題所在(「expected an indented block」),即使措辭很乾。幾週內,多數孩童開始比協助他們的成人更快地讀懂追蹤回報。
一個真正的陷阱:Python 區分大小寫,Scratch 不區分。Score 和 score 是不同的變數。這會絆倒幾乎每個從積木轉來的孩童,所以提早指出,而不是讓他們透過挫折來發現。
一個有效的大約四週進度
第 1 週:變數、print()、input()、基本數學運算符。第 2 週:if/elif/else 搭配猜測遊戲。第 3 週:for 和 while 迴圈,建立寵物模擬器。第 4 週:函式——將寵物模擬器的動作包裝成 def feed(pet): 風格的代碼,這是自 Scratch 自訂積木只暗示這一點以來最大的概念跳躍。
不要急著跳過第 4 週。函式是「程式設計師」思維真正開始的地方,跳過這部分直接做更大專案的孩童往往會寫出亂七八糟、複製貼上的代碼,難以除錯。
如果你的孩童樂於這個轉變,Korra Studio 有更多初學者 Python 逐步指南和一般計算機科學段落值得接下來探索。
本文由 AI 協助撰寫,經 Michal Pilch(CISSP)審核並發佈,Korra Studio。
這是 Korra Studio 知識庫中的一篇筆記——該平台將每個主題與一對一的師資配對。
免費開始arrow_forward