Python 启蒙 · Day 2

循环:啊哈时刻

这一课的重点不是讲语法,而是让孩子自己发现“重复好麻烦”,再体验 Python 可以帮我们重复。

课堂流程(45 分钟)

01

跑回上节课

先运行旧正方形,重新建立“我能控制”的感觉。

02

数一数重复

让孩子找出 forward + left 出现了几次,不直接说循环。

03

给出聪明办法

在孩子觉得麻烦之后,再展示 for 循环版本。

04

只改两个数字

改 range 和 left,画出不同图形。

05

展示啊哈时刻

让孩子说出:重复的代码可以交给 Python。

教师话术(照着说就行)

"你发现这几行有什么一直在重复吗?"

"如果画 8 条边,要写多少行?100 条边呢?"

"Python 有个聪明办法:告诉它重复几次。"

"range(4) 先理解成重复 4 次,i 先不用管。"

课堂代码

先跑旧版正方形

让孩子先数出 forward 和 left 一直在重复。

python
import turtle
 
t = turtle.Turtle()
t.color("red")
t.speed(3)
 
t.forward(100)
t.left(90)
t.forward(100)
t.left(90)
t.forward(100)
t.left(90)
t.forward(100)
t.left(90)
 
turtle.done()

循环版正方形

只解释一句:range(4) 就是重复 4 次。

python
import turtle
 
t = turtle.Turtle()
t.color("blue")
t.speed(3)
 
# 重复 4 次
for i in range(4):
    t.forward(100)
    t.left(90)
 
turtle.done()

改数字实验

只改两个地方

range 是改重复次数,改 left 是改转弯角度。孩子先猜,再运行。

课堂演示:多边形角度

放在循环版正方形之后。先让孩子猜三角形、六边形每次转多少度,再打开演示验证。

打开角度演示

进阶:正六边形

python
import turtle
 
t = turtle.Turtle()
t.color("green")
t.speed(3)
 
# 重复 6 次
for i in range(6):
    t.forward(80)
    t.left(60)
 
turtle.done()

惊喜:近似圆形

python
import turtle
 
t = turtle.Turtle()
t.color("purple")
t.speed(0)
 
# 很多小边,看起来像圆
for i in range(100):
    t.forward(4)
    t.left(3.6)
 
turtle.done()

完成标准

孩子能运行循环版本正方形。

孩子知道 range(4) 大概是“重复 4 次”。

孩子主动改过 range 或 left。

孩子看到近似圆形时愿意继续试数字。

不要求孩子解释 i,也不要求记住完整语法。能改数字、看到变化就达标。

做完之后

收尾只问:如果要画房子、树和太阳,循环够不够?下一节把图形组合起来。