/cn-tutor-prep-s4-ict-python-dictionary-file-io/
/cn-tutor-prep-s4-ict-python-dictionary-file-io/
简体版
2
一般查询: info@TutorZone.com.hk
办公时间: 星期一至六 - 上午 9 时至下午 6 时
WhatsApp 星期一至日 - 24 小时
人手接听: +852 6828 1809
实时客服: +852 9061 3106

DSE ICT|Python 字典与档案读写备课指引(导师用)|键值查找、逐行读档、统计与例外处理

DSE ICT|Python 字典与档案读写备课指引(导师用)|键值查找、逐行读档、统计与例外处理

  • 2026-11-05

学生识开档,但一问“为何用字典不用两个列表”就静了。这一堂用五个学生的分数档,把键值查找、逐行读档与统计一次串起来,并用字数统计说明字典为何是查找的首选。

本堂目标 学生能够:①把五行“姓名,分数”读入字典,算出平均 66.4 分、最高 91 分(Cara)、最低 45 分;②计出及格率 80 百分比,并讲出逐行读档时何时用 strip 与 split;③用字典做字频统计,讲出同一句六个字之中 to 与 be 各出现两次,并解释字典查找为何比逐个列表搜寻快。

01 先备知识(开课前 3 分钟快检)

以下任何一项未过关,本堂就会卡住,先补该项:

技能 快检题 过关标准
基本输入输出 print 与 input 的分别是什么? 一个输出、一个等输入
列表 列表用哪个括号? 方括号,索引由零开始
循环 for 循环逐个取元素,用什么语句? for 变数 in 列表

02 课堂流程(45 分钟)

时间 环节 导师做什么 学生做什么
0–5 分钟 先备快检 抽问三条先备题,把字典写法写在黑板上 口头答,错的抄一次
5–17 分钟 第一幕:键值取代两个列表 用五个姓名与分数建立字典,求平均 66.4 跟做一次,自己加一个学生
17–30 分钟 第二幕:逐行读档 读六行档,跳过标题行,得 46 字节 自己写读档三行,印出每行
30–40 分钟 第三幕:统计与例外 计及格率 80 百分比,处理档案不存在 自己改成 try 版本
40–43 分钟 一句总结 要学生讲出字典在查找上的优势 口头答,导师只纠正用词
43–45 分钟 离场检查 派三条问题,收回点错处 独立完成,不翻书

03 讲解脚本(照着说就可以)

第一幕:第一幕:一个键换一个值,不用记位置

两个平行列表要记住姓名在第几个、分数在第几个,一插入就全乱;字典用姓名做键,直接取分数。
5 个学生总分 332,平均 66.4;最高 Cara 的 91 分,最低 Dan 的 45 分,用 max 与 min 加 key 参数即可。
查找次数的分别:平行列表最坏要逐个比 5 次,字典平均 1 次,因为键会经杂凑直接定位。
一句记法:要按名字找东西,用字典;要按次序处理,用列表。

要求学生复述:字典靠键定位,不靠位置。

第二幕:第二幕:档案是一行一行字串

open 之后,每一行都是字串,连换行符都仍在,所以先 strip 再 split。
六行档案第一行是标题 name,mark,要跳过或用 next 读走;剩 5 行资料,每行拆成姓名与分数两格。
这个小档案共 46 字节,等于每行字数加一个换行符;档案大小的算法在考卷常以字节为单位问。
最重要一句:用 with open 开档,离开区块自动关档,不会忘记 close。

要求学生复述:每行是字串、先 strip、用 with 开档。

第三幕:第三幕:统计与出错都是资料的一部分

及格线 50 分,用条件式数一数,5 人中有 4 人及格,即 80 百分比。
字频统计同理:把句子 split 成 6 个字,逐个用 get 累加,to 与 be 各 2 次,其余各 1 次,字典共 4 个键。
真实档案会缺字段或不是数字,所以要用 try 包住转换,并在 except 记录行号,而不是让程式整个停。
答题要写出“检查、转换、统计、输出”四步,阅卷员看的是步骤而不是美观。

要求学生复述:先检查再转换,错的行要记录不要静静跳过。

04 必教题型与步骤

题型 例子 步骤 答案
建立字典 5 个姓名与分数 逐对写入,或由两个列表 zip 字典有 5 个键
逐行读档 六行文字档,首行标题 with open、strip、split、跳标题 读到 5 笔资料
统计计算 分数清单 sum 除个数得平均,条件计数得及格率 平均 66.4,及格率 80 百分比
例外处理 档案不存在或字段不是数字 try except 包住 open 与 int 程式继续,并印出行号
合理性检查(一定要教):三个回读:①平均 66.4 一定在最低 45 与最高 91 之间,超出就是加错人;②及格率不可能大于一百,4 除 5 得 80 百分比;③字频统计的键数 4 一定少于字数 6,若相等就代表每个字只出现一次或计法有误。

05 独立练习三题

题目 答案 想观察什么
五个分数 60、70、80、90、100,平均多少? 80 看有无除错个数
文字档有七行,首行标题,资料有几笔? 6 笔 看有无跳过标题
字典查找为何比列表快? 用键经杂凑直接定位,不用逐个比较 看有无讲出键而不是位置

06 学生常见错误与纠正句

错误 学生通常这样写 导师这样说
忘记 strip 分数格变成 ’72\n’,int 转换失败 每行先 strip 再 split,换行符不是资料。
列表与字典混淆 用索引取姓名,插入一笔就全错位 要用名字找,就用字典做键。
平均除错个数 总分 332 除 6 得 55.3 资料只有 5 笔,标题行不是学生。
例外当成错误 程式一遇坏行就停 用 try except 记录行号,其余继续处理。

07 家课建议(直接指到练习卷题号)

08 离场检查(最后 5 分钟)

题目 答案 判定
5 个学生的总分是 332,平均多少 66.4 分 错:除以 6
读档时为何要先 strip 去掉行尾换行符,否则转数字失败 错:答成为了美观
字典查找靠什么定位 键,经杂凑直接找 错:答成靠索引次序

09 导师常问

这一章适合哪一年级?

中四 ICT 程式部分,中五重温选修单元时可作起点。

45 分钟够不够讲读档与例外?

够,因为两者用同一个小档案示范,只写一次完整程式。

有无配套练习?

本章练习三题,答案在页内;家课接 Python 程式设计入门那章。

立即免费找导师导师登记 →

本页为 TutorZone 导师备课指引,内容由 TutorZone 团队编写;题目与流程为原创,并非任何学校或出版社的教材。

招募导师及兴趣班教练|学术、乐器、体育、艺术、STEM,免费登记,招生与配对交给平台。 了解详情 →