宝物清单
Hoppy 把几样刚找到的宝物和线索摆在柜台上:箱子标签是一张纸,守柜人的名字写在角落里,线索词压在小石头下,几件宝物名字又散在另一边。
如果这些信息一直零零散散地放着,别人就很难一眼看懂。所以今天我们要往前迈一步:不只是读结构化记录,也要主动把零散信息整理成一份 JSON 风格的结果。
JSON 风格结果,通常就是用 dict 和 list 把信息排整齐
当你在 Python 里用 dict 放字段、用 list 放一组项目时,打印出来的结果常常已经很像 JSON 记录了。今天的重点不是写文件,而是先学会把信息整理成这种清楚的形状。
camp_name = "Moss Shelf"
token_names = ["bell", "rope"]
camp_record = {
"camp_name": camp_name,
"tokens": token_names
}
print("Camp record:", camp_record)
这里没有把结果写进文件,也没有讲序列化。我们只是先把“几块零散信息”整理成“一份有字段、有列表的记录”。这就是今天真正要练的动作。
今天的任务:把散开的宝物信息收成一份清楚的记录
starter 已经给好了 chest_label、keeper_name、clue_word 和 treasure_names。你要把它们组织进一个新的 treasure_record 里。
运行 starter,先看看现在这些值是怎样分散地放在不同变量里的。
把 treasure_record 设成一个 dict,并使用这些键:"chest_label"、"keeper_name"、"clue_word"、"treasures"。
运行后,你会先看到原本分散的信息,再看到一份更整齐的记录。这个动作就是从“零散数据”走向“JSON 风格输出”的第一步。
今天只练“构造 JSON 风格结果”这一步:用 dict 和 list 把字段排整齐。我们不要求真正写入文件,不讲 json.dumps(),也不进入接口返回格式。
参考答案点击展开点击收起
chest_label = "Fernlight Chest"
keeper_name = "Mira"
clue_word = "silver fern"
treasure_names = ["amber key", "moon coin", "moss compass"]
print("Loose pieces:")
print("Chest label:", chest_label)
print("Keeper name:", keeper_name)
print("Clue word:", clue_word)
print("Treasure names:", treasure_names)
treasure_record = {
"chest_label": chest_label,
"keeper_name": keeper_name,
"clue_word": clue_word,
"treasures": treasure_names
}
print("Treasure record:", treasure_record)高级技巧想更进一步?点击展开点击收起
今天最重要的直觉是:结构化结果不一定非得“从外面拿来”,你也可以自己把信息重新排好。只要字段名清楚、列表放得合适,结果就已经很像一份能继续传递和使用的记录。
下一课,Hoppy 会把视线从 JSON 再拉到另一种常见记录形状:按行和列组织起来的 CSV 表格。