第7课 列表初探——批量数据的处理 教学设计+html素材 小学信息科技Python程序设计

资源下载
  1. 二一教育资源

第7课 列表初探——批量数据的处理 教学设计+html素材 小学信息科技Python程序设计

资源简介

/ 让教学更有效 精品试卷 | 信息
小学四—五年级 Python 程序设计(第一学期)
教 学 设 计
第7课 列表初探——批量数据的处理
课  题 第7课 列表初探——批量数据的处理
课  时 第 7 课时(40 分钟)
课  型 新授 + 综合应用
教学环境 机房(Windows + Python 3.x + IDLE/Thonny)
授课班级 四年级、五年级
一、学情分析
学生已经能处理单个变量、能循环、能判断,也能用 split() 得到「一串词」——但还不知道那个东西叫什么。本课揭示:它就是列表。这形成了一次漂亮的认知闭合,是学期收束课的最佳切入点。
学习难点在于:
1.从前「一个变量存一个值」变成「一个变量存一串值」;
2.用下标访问:a[0] 是第一个,a[len(a)-1] 是最后一个;
3.遍历列表时同时需要「值」和「序号」——用 for i in range(len(a)) 拿到下标。
二、教学目标
(一)知识目标
1.认识列表,掌握 [] 创建与 append() 添加元素。
2.掌握 len()、sum()、max()、min() 四个列表统计函数。
3.掌握「按下标遍历」for i in range(len(a)) 的用法与适用场景。
(二)能力目标
1.能编写「录入 n 个数 → 统计」的完整程序。
2.能用下标遍历找出最大值及其位置。
(三)素养目标
1.体会「用程序批量处理数据」的效率优势(如统计全班成绩)。
2.形成学期末的整体知识图景:输入输出 → 分支 → 循环 → 字符串 → 列表。
三、教学重点与难点
项 目 内 容
教学重点 append() 录入;len / sum / max / min 统计四件套。
教学难点 下标从 0 开始;按下标遍历时如何同步记录「值」与「位置」。
四、教学准备
· 教师:课件、班级某次测验的分数条(虚拟)、期末知识回顾图。
· 学生:练习卷。
· 素材:1成绩统计.py、2输入n个数.py、找最大值和位置.py。
五、教学过程(共 40 分钟)
环节一 情境导入:统计全班成绩(5 分钟)
提问:「如果老师想知道全班 40 人的平均分、最高分、最低分,你会怎么算?」
学生回答「一个一个加」——教师追问:「如果有 400 人、4000 人呢?」
引出:把数据装进一个「盒子」里,让电脑一次算完——这个盒子就是列表。
环节二 新授:认识列表(10 分钟)
演示 1成绩统计.py。
scores = [88, 92, 75, 60]
print("人数:", len(scores))
print("总分:", sum(scores))
print("最高:", max(scores))
print("最低:", min(scores))
板书结构图:
scores = [ 88 , 92 , 75 , 60 ]
下标 0 1 2 3
四个函数一句话记法:
函 数 用 途 记 忆
len() 元素个数 length 长度
sum() 总和 sum 求和
max() 最大 max 最大
min() 最小 min 最小
关键提醒:最后一个元素的下标是 len(scores) - 1,不是 len(scores)——这是学生最容易犯的错。
环节三 新授:录入数据 append(10 分钟)
演示 2输入n个数.py。
n = int(input())
a = []
for i in range(n):
a.append(int(input()))
print(a)
讲解:① a = [] 先准备一个空盒子(必须先建空列表,否则 append 会报错);② a.append(x) 表示「往盒子末尾放一个 x」;③ 因为输入多少个数不确定,所以用 for 循环录入。
「盒子」比喻(板书):
a = [] 空盒子
a.append(88) [88]
a.append(92) [88, 92]
a.append(75) [88, 92, 75] 每次都是「放到最后」
即时练习:让学生录入 5 个同学的年龄,然后打印出来。
环节四 进阶:按下标遍历(12 分钟)
演示 找最大值和位置.py。
a = [5, 2, 9, 1]
max_i = 0
for i in range(1, len(a)):
if a[i] > a[max_i]:
max_i = i
print("最大值:", a[max_i])
print("位置:", max_i)
启发式提问:
(1)如果只要最大值,一句 max(a) 就够了;但如果还要知道它排在第几个,怎么办?→ 需要记住「下标」,而不是记住「值」。
(2)为什么 max_i = 0 而不是 max_i = a[0]?→ 因为我们存的是「位置」,不是「数值」。这是本课最精妙的一点。
变 量 存的是什么 初始值
max_i 最大值的下标 0(假设第一个最大)
a[max_i] 最大值的数值 通过下标取得
手动模拟(a = [5, 2, 9, 1]):
i a[i] a[max_i] 比较 max_i 更新为
初始 — 5 — 0
1 2 5 2 > 5 否 0
2 9 5 9 > 5 是 2
3 1 9 1 > 9 否 2
结论:最大值 9,位置 2(即第 3 个)。
注意:位置从 0 开始数!如果按人的习惯说是「第 3 个」,可以输出 max_i + 1。
环节五 学期总复习与展望(3 分钟)
知识地图(板书):
第1课 输入输出 ──> 第2课 分支 ──> 第3课 循环 ──> 第4课 嵌套循环
↓ ↓
第5、6课 字符串处理 ──> 第7课 列表
一条主线:把大问题拆成「输入—处理—输出」
下学期预告:函数(把代码打包起来复用)、字典(用名字找东西)、文件读写(把数据存到电脑里)。
六、板书设计
第7课 列表初探
a = [88, 92, 75, 60]
0 1 2 3 下标从 0 开始!
a = [] 建空表
a.append(x) 末尾添加
len/sum/max/min 统计四件套
按下标遍历:
for i in range(len(a)):
a[i] 取第 i 个
找最值位置:max_i 存下标,不存值
七、分层作业
★ 完成练习卷第一、二、三、四题(填空、判断、手算模拟、补全代码)。
★★ 完成练习卷第五题:录入 5 个成绩输出总分、平均分、最高分、最低分;输出所有大于平均数的数。
★★★ 完成练习卷第六题:录入 n 个数,找出最大值、最小值以及它们所在的位置。
八、教学反思要点
1.「下标从 0 开始」是否全班都能理解?是否需要做一次实物排队演示(第一个同学报 0)?
2.max_i 存下标而非数值,是本课最难点,是否需要增加一个更简单的过渡例子?
3.学期结束,是否需要设计一节综合实践课(如「班级成绩管理小助手」)把 7 课内容串联起来?
课后记(教师填写):
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
21世纪教育网 www.21cnjy.com 精品试卷·第 2 页 (共 2 页)
21世纪教育网(www.21cnjy.com)

展开更多......

收起↑

资源预览