/tutor-prep-s3-ict-python-loops-functions/
/tutor-prep-s3-ict-python-loops-functions/
一般查詢: info@TutorZone.com.hk
辦公時間: 星期一至六 - 上午 9 時至下午 6 時
WhatsApp 星期一至日 - 24 小時
人手接聽: +852 6828 1809
即時客服: +852 9061 3106

中三 ICT|Python 迴圈與函數 備課指引(導師用)|for/while、range、累加器、return

中三 ICT|Python 迴圈與函數 備課指引(導師用)|for/while、range、累加器、return

  • 2026-11-12

學生寫得出 for i in range(5),但你叫他加總一到十,他會寫 print(1+2+3)。這一堂要教的不是語法,而是「一個變數記住中途結果」這個想法。

本堂目標 學生能夠:① 用 for 加 range(1, 11) 加總 1 到 10 得 55,並講出 range 的上限不包含在內;② 寫出累加器三步(先設 total = 0、迴圈內 total = total + i、迴圈後才 print),並解釋為甚麼歸零要在迴圈之前;③ 定義一個帶參數與 return 的函數,例如 def average(nums) 回傳平均值,並講出參數、區域變數與回傳值三者的分別。

01 先備知識(開課前 3 分鐘快檢)

以下任何一項未過關,本堂就會卡住,先補該項:

技能 快檢題 過關標準
變數 x = 5 之後再寫 x = 7,x 是多少? 7,後面的指派蓋過前面
縮排 Python 用甚麼表示「這幾行屬於迴圈」? 縮排,通常是四個空格
課本函數 print 與 input 的分別是甚麼? print 輸出到螢幕,input 由鍵盤讀入字串

02 課堂流程(45 分鐘)

時間 環節 導師做什麼 學生做什麼
0-6 分鐘 先手算 叫學生手算 1 加到 10,寫出 55,再要求用程式一次算完 手算得 55,意識到要迴圈
6-16 分鐘 for 與 range 示範 range(1, 11) 印出 1 到 10,改 range(1, 12) 看分別 能講出上限不包含
16-26 分鐘 累加器三步 在黑板分三行寫 total = 0、total = total + i、print(total) 能寫出完整四行並執行
26-34 分鐘 while 與停止條件 用 while 重做同一題,故意漏 i = i + 1 示範無限迴圈 能指出停止條件在哪一行
34-40 分鐘 函數與 return 把加總包成 def add_to(n),再示範 return 與 print 的分別 能寫出一個帶 return 的函數
40-45 分鐘 離場檢查 收三題即場批,指出要補哪一幕 交三題

03 講解腳本(照著說就可以)

第一幕:第一幕:range 的上限不包含在內

「for i in range(1, 11) 會印 1 到 10,唔會印 11。為甚麼?因為 range 講的是『由第一個數開始,去到第二個數之前停』。所以想加到 10,就要寫 11;想印五次,就寫 range(5),等同 range(0, 5)。第三個參數是步長:range(2, 11, 2) 得 2、4、6、8、10,加起來 30。如果你寫 range(1, 10),加起來是 45 唔係 55,差咗個 10,這個錯最少人發現,因為程式照跑,只係答案靜靜地錯。」

上限前停一格;想加到 n 就寫 n+1。

第二幕:第二幕:累加器要先歸零,而且在迴圈之前

「四行:total 等於 0;for i in range(1, 11);縮排寫 total 等於 total 加 i;迴圈完之後 print。為甚麼歸零要在外面?如果你把 total 等於 0 寫在迴圈裡面,每一圈都會清空,最後只會印出 10。為甚麼 print 要放外面?放裡面會印十次中途結果,你會見到 1、3、6、10、15、21、28、36、45、55,其實這串數字很有用,是每個階段的和,但如果題目問總和,就只要最後一個。這個變數叫累加器,其他常見版本是計數器 count 加一、乘積 product 乘 i。」

歸零在外、print 在後;放錯位置答案就靜靜地錯。

第三幕:第三幕:參數是入口,return 是出口

「def average(nums) 冒號,縮排寫 total 等於 0,for n in nums 累加,最後 return total 除 len(nums)。三個名詞要分清楚:nums 是參數,呼叫時才拿到值;total 是區域變數,函數做完就消失;return 把結果交出去,外面要用就要接住,例如 ans 等於 average 清單。最常混淆的是 print 與 return:print 只顯示,函數外面拿不到;return 交出去,但本身不會顯示。所以寫完函數要自己印一次答案,否則你會以為函數無效。」

參數入、return 出;print 唔等於 return。

04 必教題型與步驟

題型 例子 步驟 答案
迴圈加總 用 for 加總 1 到 10,寫出完整程式。 (1)設 total = 0(2)for i in range(1, 11)(3)縮排累加(4)迴圈後 print total = 0;for i in range(1, 11): total = total + i;print(total) 得 55
while 與停止條件 用 while 重做同一題,並指出停止條件。 (1)設 i = 1 與 total = 0(2)while i <= 10(3)迴圈內累加並 i = i + 1(4)print 停止條件是 i <= 10;漏寫 i = i + 1 會無限迴圈
累加器位置 以下程式只印出 10,錯在哪裡?for i in range(1, 11): total = 0; total = total + i (1)找 total = 0 的位置(2)判斷是否在迴圈內(3)移出迴圈(4)再執行核對 total = 0 被縮排入迴圈,每圈重設;移出迴圈即得 55
函數與回傳 寫一個函數回傳 2 到 10 之間所有偶數的和。 (1)def 名稱帶參數(2)total = 0(3)for n in range(2, 11, 2) 累加(4)return total 並在外部 print def even_sum(): total = 0; for n in range(2, 11, 2): total += n; return total,得 30
合理性檢查(一定要教):合理性檢查:1 到 10 的總和必須是 55,若得 45 表示 range 上限錯一格;1 到 5 的平方和也是 55,兩個 55 要用不同算式核對,不要互相當證據;偶數 2 到 10 合共五個數,和 30,若算出 25 表示漏了 10;5 的階乘是 120,用乘積累加器時 product 必須由 1 開始,由 0 開始永遠得 0;迴圈次數可以用手數,3 乘 4 的嵌套迴圈一定是 12 次,不是 7 次。

05 獨立練習三題

題目 答案 想觀察什麼
寫一個 for 迴圈印出 1 到 20 的單數。 for i in range(1, 21, 2): print(i) 步長 2,由 1 開始
寫一個函數回傳三個數的平均,並用 62、78、85 測試。 def average(a, b, c): return (a + b + c) / 3,得 75.0 return 之後要 print 才見到
為甚麼 while 迴圈要特別小心?舉一個出錯例子。 停止條件永遠成立就會無限迴圈,例如漏寫 i = i + 1,程式不會停 每次寫 while 都先寫停止條件

06 學生常見錯誤與糾正句

錯誤 學生通常這樣寫 導師這樣說
range 少一格 「range(1, 10) 就係 1 到 10。」 「range 停在上限之前,所以係 1 到 9,和係 45。要寫 11,先得 55。」
累加器歸零放了在迴圈內 「total 等於 0 寫入迴圈方便啲。」 「每圈都清零,最後只餘最後一個數 10。歸零要放迴圈之前,print 放迴圈之後。」
print 當成 return 「我個函數有 print,所以外面用得到。」 「print 只係顯示,函數外面拿到的是 None。要用 return 交出去,再在外面 print。」
縮排不一致 「縮排只係好唔好睇。」 「Python 靠縮排判斷邊幾行屬於迴圈,混用空格與 Tab 會出 IndentationError,一行四個空格最穩。」

07 家課建議(直接指到練習卷題號)

08 離場檢查(最後 5 分鐘)

題目 答案 判定
range(1, 11) 包不包括 11? 不包括,包 1 到 10 答錯就重教第一幕
累加器為何要在迴圈之前歸零? 在迴圈內歸零會每圈清空,只餘最後一個值 答不出就重教第二幕
return 與 print 的分別? return 把值交回呼叫者,print 只顯示 混淆就重教第三幕

09 導師常問

要教 list comprehension 嗎?

中三不需要;先讓學生寫得出四行基本迴圈,語法糖留到高中。

學生寫 while True 加 break 可以嗎?

可以但先不鼓勵;考試與批改看的是停止條件是否清楚,while True 容易掩蓋邏輯。

要不要教例外處理?

這一堂不教;輸入錯誤留到檔案與資料處理那一章,先鞏固迴圈與函數。

立即免費搵導師導師登記 →

本頁為 TutorZone 導師備課指引,內容由 TutorZone 團隊編寫;題目與流程為原創,並非任何學校或出版社的教材。

招募導師及興趣班教練|學術、樂器、體育、藝術、STEM,免費登記,招生與配對交給平台。 了解詳情 →