单元四

第15课 字典存档——模拟读档写档

任务场景:存档读档——把进度装进字典
任务场景:存档读档——把进度装进字典
原理图:字典存档——写入字段,再读出来继续玩
原理图:字典存档——写入字段,再读出来继续玩

一、任务目标

用一个字典表示存档,支持查看、修改、再读出。

二、存档就是一包状态

真正的游戏会把进度写到文件;本课先用字典模拟:键是字段名,值是当前进度。

  • 读档:save["hp"] 取出生命
  • 写档:save["stage"] = 3 更新关卡
  • 字段齐全:名字、血量、金币、关卡……想加就加键

以后学文件读写时,往往也是「先组好字典,再整体保存」。

三、解题思路

任务:用一个字典表示存档,支持查看、修改、再读出。 先想清楚:输入是什么、处理后得到什么、屏幕上应出现什么。

本课主要用到:屏幕输出。

  1. 1明确任务「用一个字典表示存档,支持查看、修改、再读出。」:运行后你希望看到什么结果(文字、图形或计算结果)。
  2. 2用「打印」积木把结果说出来,确认屏幕上出现预期内容。
  3. 3对照参考积木(或代码)跑通后,只改一个参数,观察结果如何变化。

流程示意(可对照左侧文字)

任务:用一个字典表示…用「打印」积木把结果说出来,…对照参考积木(或代码)跑通后,只改一…

四、图形块功能讲解

本课用到的 Mixly 图形块均已在前面的课讲过。请直接对照编程练习搭积木;若有遗忘,回到该积木首次出现的课页复习。

五、知识点讲解

字典用「键 → 值」保存对应关系,如商品名对应价格。用键查找,比两个平行列表更不容易对错行;先确认键是否存在再取值。

先弄清本课输入与输出,再进编程练习对照现象。

六、编程练习

用下拉列表切换题目;下方 Mixly 默认显示图形化积木。请在 Mixly 工具栏点「运行」;「检查」读取 Mixly 代码判题。

先阅读并运行,感受游戏循环。

参考代码(对照抄写到下方 Mixly)
# 用字典模拟「存档槽」
save = {"name": "小飞", "hp": 80, "gold": 30, "stage": 2}
print("当前存档:", save)

# 读档:取出字段继续玩
print("欢迎回来,", save["name"], "关卡", save["stage"])

# 玩了一会儿后「写档」
save["hp"] = 65
save["gold"] = save["gold"] + 15
save["stage"] = 3
print("已保存:", save)

# 再读一次验证
loaded = save  # 本课用同一字典模拟读回
print("读档成功:HP", loaded["hp"], "金币", loaded["gold"])

七、课堂练习

选出你认为正确的一项,再点「检查」。

  1. 本课用字典模拟存档,主要因为?

  2. save["gold"] = save["gold"] + 15 属于?

  3. 读档时最常见的操作是?

八、本节小结

字典能模拟存档槽。