Appearance
循环与规律创作(上)——从“重复劳动”到for循环的效率魔法
课题
用for循环解锁“重复图案”的密码
教学时间
2课时(90分钟)
课前准备
- 教师端:电脑(Python 3.10+)、投影仪、多媒体课件(含生活中重复图案视频:瓷砖铺贴、蜂巢结构、音乐节拍)、实物道具(带重复花纹的围巾、六边形积木)、“循环指令卡”(写有“画5个圆”“走3步右转”等)。
- 学生端:电脑(Python环境,预装turtle库)、坐标纸、彩色笔(绘制图案草稿)、笔记本(记录循环规律)。
- 教学素材:代码模板(含基础循环框架)、分层任务单(基础/进阶)、“规律发现者”勋章、AI代码小助手(可生成循环绘图示例)。
一、导入活动:从“重复的智慧”到循环逻辑(15分钟)
活动1:“手动画10个圆”——体验重复的低效
- 任务:让学生在坐标纸上用圆规画10个大小相同、间隔相等的圆,计时1分钟。
- 提问:“画到第5个时有没有觉得麻烦?如果要画100个,怎么办?”引导发现“重复劳动需要更高效的方法”。
活动2:“找规律猜图形”——感知循环的本质
- 展示图片:①瓷砖按“方-圆-方-圆”排列;②蜂巢的六边形重复结构;③音乐简谱“do-re-mi-do-re-mi”。
- 小组讨论:“这些图案/声音有什么共同点?”(核心:重复出现的单元+次数)。
- 类比:“计算机处理重复任务时,用‘循环’指令——就像给瓷砖工人一张‘每30cm贴1块方砖’的纸条,不用每次单独说”。
二、知识点讲解:for循环基础与turtle绘图应用(30分钟)
模块1:认识for循环——“重复做n次”的指令(12分钟)
- 核心概念:for循环是“让一段代码重复执行指定次数”的语法,格式:python
for 变量 in range(次数): 重复执行的代码(注意缩进!) - 生活类比:
- “for i in range(5): 跑步” → 相当于“跑5圈”(i是圈数计数器,从0到4);
- 缩进的作用:“被缩进的代码”才是循环体内要重复的内容(用“给工人的纸条上画框的内容”比喻)。
模块2:用for循环绘制重复图形(18分钟)
案例1:画5个间隔相等的圆(结合turtle库):
pythonimport turtle t = turtle.Turtle() # 创建绘图角色 t.speed(1) # 放慢速度,看清过程 # 循环5次:每次画圆+移动一段距离 for i in range(5): t.circle(30) # 画半径30的圆 t.penup() # 抬笔(不画线) t.forward(60) # 向前移动60(圆直径,避免重叠) t.pendown() # 落笔(准备画下一个) turtle.done() # 保持窗口- 关键:
range(5)控制次数,forward(60)控制间隔(数学:圆直径=2×半径)。
- 关键:
案例2:用循环画正方形(复习巩固):
pythonfor i in range(4): # 正方形4条边 t.forward(100) t.right(90) # 右转90度(数学:正方形内角)- 对比:不用循环需要写4遍
forward+right,循环让代码更简洁(“少写3行,少犯3次错”)。
- 对比:不用循环需要写4遍
三、练习题设计:分层任务+规律应用(30分钟)
基础任务(全员完成):“彩虹糖葫芦”
- 要求:用for循环画5个颜色不同的圆(红→橙→黄→绿→蓝),间隔50像素,半径20。
- 提示:用列表存储颜色
colors = ["red", "orange", "yellow", "green", "blue"],循环中用t.color(colors[i])调用。 - 代码框架:python
import turtle t = turtle.Turtle() colors = ["red", "orange", "yellow", "green", "blue"] for i in range(5): t.color(colors[i]) # 第i个圆用第i种颜色 t.begin_fill() t.circle(20) # 半径20 t.end_fill() t.penup() t.forward(50) # 间隔50 t.pendown() turtle.done()
进阶任务(选做):“旋转的星星”
- 要求:用for循环画8个星星,每次画完后旋转45度(360÷8=45,数学:均匀分布),形成圆形图案。
- 支持:打开AI代码小助手,输入“用turtle画8个旋转的星星”,获取星星绘制函数
draw_star(size),学生补充循环逻辑。
教师巡视重点:
- 纠正缩进错误(忘记缩进或缩进不一致,导致“只执行一次”);
- 引导发现“次数与角度的关系”(如8个图形对应旋转360/8=45度)。
四、讲解与互评:从“代码”到“规律”(10分钟)
- 问题诊断:投屏典型错误案例(如“圆重叠”——间隔太小;“颜色不变”——未用
colors[i]),集体分析原因。 - 规律分享:请学生说“你的循环中,重复的单元是什么?次数是多少?隐藏的数学规律是什么?”(如“每个圆间隔=2×半径,保证不重叠”)。
- 创意评选:投票选出“最整洁的循环代码”(缩进规范)和“最有数学美感的图案”(间隔均匀),颁发勋章。
五、总结与作业(5分钟)
课堂总结:
- for循环的作用:高效执行重复任务,格式是
for i in range(次数): 缩进的代码; - 核心三要素:重复单元(循环体内的代码)、次数(
range(n))、变化量(如颜色、位置、角度); - 与数学的关联:间隔、角度等参数需要用除法/乘法计算(如均匀分布=360÷次数)。
课后作业:
- 观察家中1个重复图案(如地砖、窗帘花纹),用文字记录“重复单元”和“次数”,下次课分享;
- 尝试修改“彩虹糖葫芦”代码:把圆变成正方形,间隔改为60,看看会发生什么。
教学理论支撑:
- 皮亚杰形式运算阶段理论:通过“手动画圆”(具体操作)到“循环代码”(抽象逻辑)的过渡,培养学生对“重复规律”的形式化表达能力。
- 维果茨基最近发展区:基础任务(固定参数)→进阶任务(角度计算)→AI助手辅助,三层支架帮助不同水平学生掌握循环逻辑。
- STEAM教育融合:结合数学(间隔计算、角度分配)、艺术(色彩搭配、图案对称)、工程(高效重复的逻辑设计),体现“做中学”的跨学科整合。