← 首页
00:00点开始
学情 用时 0′ 尝试 0 出错 0 归因 0
今日任务
用 for 循环把正方形的四遍 forward 压成一遍

课 9 你手写四遍 forward 画正方形;今天把这四遍压成一遍 for 循环。 画出来的还是同一个正方形,但这次是用"循环"写的——跑在真 Python(Pyodide)上。

开场 8 分钟怎么花: 回顾课 9 的手写正方形(2′)→ 今天为什么要把它压成循环(3′)→ 发手帖(3′)。
开场只抛问题,不抛代码——让学生先说"正方形怎么用循环写",说出来越多,第一步撞墙撞得越响。
老师说 一个正方形,你早就会画了。今天换个写法:不用四遍,用一遍 for 循环
第十种陷阱:课 9 错在"命令写错"(forward 拼成 forwad); 今天错在"循环框架写错"——缩进、次数、冒号,任何一个疏漏,整段就废。 这正好是"报错博物馆"要练的。

这一步别急着给代码。先让学生相信"重复卡能做的事,for 循环也能做", 再让他自己写——写错报错,才是这堂课的入口。

第一步 · 综合的陷阱 09′–23′ · 14 分钟 · 这次是「循环框架写错」

陷阱换了(第十种)
不是 turtle 命令错,是 for 循环的缩进 / 次数 / 冒号错
老师说 自己写一个 for 循环,用 for 循环把四遍 forward 压成一遍,画正方形。 四条边、四个直角,循环 4 遍。
别照抄——先写,写错报错才算这步撞到墙

今天这堂课的陷阱类型(第十种):错误来自循环框架——你心里知道画正方形, 但把重复写成 for 循环时,缩进/次数/冒号错,Python 的报错比命令错更难懂。

老师纪律:学生运行时不许直接说答案。 报错第一句就写了错在哪:IndentationError / SyntaxError / TabError。先让他念出这三个词之一。

第二步 · 内存具象化 23′–37′ · 14 分钟 · 正确骨架长这样

老师说 正确骨架就三步:import turtle → t = turtle.Turtle() → for i in range(4): t.forward / t.left
for 循环就是重复卡的写法——你早就会重复卡了。
位置 · 横
0
位置 · 纵
0
朝向
落下
真 Python 画出来的循环正方形,和卡片引擎的重复卡画的是同一个——右边画布是卡片引擎画的对照。
这一步的关键动作: 别把"for 循环"讲成新知识点。给学生看它背后就是 forward/left——顺序对了,图形就出来了。 这是课 9 的总收口,也是真机真题的门槛。
37′–47′ · 10 分钟该休息啦
休息 1 · 必须离开座位站起来动一动

喝水 / 上厕所 / 不许看屏幕

这条要写进家长话术。 「每 35 分钟站起来 10 分钟」——这是 120 分钟课最有力的家长说服点。

第三步人脑电脑第一次要学生展开 for 循环背后的步数。休息必须给足。

第三步 · 人肉电脑 47′–65′ · 18 分钟 · 展开 for 循环背后的步数

老师说 不许按运行。
一段真 Python for 循环,背后是 import + 建实例 + 4 次 forward + 4 次 left
人脑编译时,你得能把它一步步展开——每步走多长、转向多少。
老师纪律:学生算错时不许直接说答案。 只许问三句话:①你猜的是哪一行?②你凭什么这么猜?③那怎么改?
先别看答案。让学生在纸上写出这个 for 循环总共几步: 尤其是每条边前进 100、每次左转 90°

第四步 · 脚手架编程 65′–85′ · 20 分钟 · 改一改循环

老师说 把循环改一改:range(3) 画三角形、range(6) 画六边形、改边长。
改完运行,看画布。
任务要画出来的东西怎么写自检
A 三角形:range(3) for i in range(3): forward + left(120)
B 六边形:range(6) for i in range(6): forward + left(60)
C 换边长:改 forward 的数字 改 forward 的参数
任务 A 的落点(本课真正的收获): "三角形"不是新知识点,是range 换成 3。 先人脑算 left 该转多少(360/3=120),再写——这正是人肉电脑那 18 分钟练的。
85′–91′ · 6 分钟该休息啦
休息 2 · 短,但必须伸个懒腰

站起来 6 分钟

第五步 · 组合破防 91′–105′ · 14 分钟 · 四种写错的循环

老师说 先画一个正方形出来,然后看四种循环写错的代码长什么样。
底下四个按钮各载入一种,先读报错,再改对
写错方式你会看到试过了
① 缩进错循环体没缩进,Python 不知道哪段属于循环
② 忘冒号for 后面没冒号,循环根本没开始
③ 次数错range(3) 只循环 3 遍,画出三角形
④ 混用 tab/空格缩进混用,Python 直接拒绝
破防点:Python 的报错不是来找茬的,是来告诉你"哪行、什么错"的—— 读得懂报错,就赢了一半。四种写错的循环,每一种都对应一个具体的报错词。

第六步 · 数卡迁移 105′–120′ · 16 分钟 · 从循环到真题

回到开头那个问题
怎么用 for 循环画一个正方形?
你用四张卡摆,要四张;用真 Python 写出来,只要 import + 建实例 + 一个 for 循环。
今天真正学会的不是正方形。
老师说 有一种能力,它不画图,它写循环
而且写之前你得知道画出来是什么——不能闭眼信它。

迁移 · 真题长什么样

GESP 一级的 turtle 真题,套路就一个:给你一段真 Python for 循环,问你展开成几步、画出来是什么、转了多少度。
你今天练的"手写循环 + 读循环报错",就是解这类题的通用基本功。
真题密度:range 二级 22.5,循环是 GESP 一级到二级的最高频结构之一。

下节课作品预告

课 11 起用循环画更多图形——多边形 / 风车 / 花瓣,都是 range 的变体。但今天的手写功底不能丢。
预告作品,不预告知识点。

本学期的作品锚

今天你第一次用 for 循环画出了正方形——比四行代码酷多了。
今天你第一次读懂了「循环把重复压成一遍」——这是所有图形题的通用武器。
本学期的作品锚:《我的第一张藏宝图》(那条线只是副产品,证据链才是差异)。

家长话术

今天不是"画了个正方形"。要说这三句:
场景照着说
家长问"今天学了啥" 「今天他第一次亲手写 for 循环画图形,还第一次读懂了循环的报错——这是信奥的真门槛。」
家长问"这考不考" 「写真 Python for 循环 + 读报错,是 GESP 一级真题的通用基本功,range 在二级密度 22.5。」
家长嫌"就画个正方形" 「正方形是副产品。今天的真东西是:手写 for 循环 + 读懂缩进/次数/冒号的报错。这俩,培训班一笔带过,我们磨一整节课。」
⚠️ 不要说这三句: ①「今天学了 for 循环」 ②「今天学了压代码」 ③「正方形是信奥门槛」。
前两句说了就把课上成培训班;第三句把副产品当成正餐,第五步那 14 分钟就白费了

收尾(7′)

  • 填手帖:今天新认识(手写 for 循环 + 读循环报错),画在「我的卡组」那一栏
  • 家庭挑战:不用电脑,用嘴指挥爸妈画一个正方形(练"展开循环背后步骤")
  • 收卡片手帖(2–4′,别小看,这段时间最容易拖)

海龟的画布

(摆好卡片,按运行)

对应的 Python 代码 实时同步

本课硬事实 老师自查