blog.dopana

Back

欢迎回来,代码探险家! 📖

在上一节课中,我们学习了列表(背包),里面的物品都存放在贴着数字编号(0, 1, 2…)的格子里。但如果你想用单词而不是数字来查找信息该怎么办呢?

比如,你想查找一个超级英雄的超能力,你肯定不想靠运气去猜索尼克在第几个格子里。你只想输入“索尼克”,然后直接获得“超级速度”!

在 Python 中,我们通过 字典(Dictionary) 来实现这一功能!

什么是字典?(秘密通讯录)#

你可以把字典想象成一本通讯录或电话簿:

  • 键(Key):你用来查找的单词或名字(就像通讯录里的联系人姓名)。
  • 值(Value):与该键相对应的秘密信息或号码。
graph LR
    subgraph Dictionary ["📖 superpowers = {...}"]
        Key1["🔑 '索尼克'"] --> Value1["💬 '超级速度'"]
        Key2["🔑 '马力欧'"] --> Value2["💬 '超级跳跃'"]
        Key3["🔑 '路易吉'"] --> Value3["💬 '高空跳跃'"]
    end

在 Python 中,我们使用花括号 { } 来编写字典,并用冒号 : 连接每一个键和值:

superpowers = {
    "索尼克": "超级速度",
    "马力欧": "超级跳跃",
    "路易吉": "高空跳跃"
}
python

查找信息(翻阅通讯录)#

要想查找一个值,你只需要写下字典的名字,然后在方括号 [ ] 里写下对应的键:

print(superpowers["索尼克"])  # 机器人会查阅索尼克并打印出 "超级速度" ⚡
python

修改通讯录(添加和删除)#

就像真实的通讯录一样,你可以往里面添加新的联系人、更新超能力,或者抹去某些条目。

1. 添加或更新内容#

要想添加一个新英雄,只要在方括号里写下新英雄的键,并把它设为对应的超能力:

superpowers["耀西"] = "什么都吃"
print(superpowers)  # 耀西已经进入我们的字典里了! 🦖
python

如果你想在马力欧吃下道具后更新他的能力,方法完全一模一样:

superpowers["马力欧"] = "发射火球"
python

2. 删除条目 (del)#

要想擦除一个联系人,可以使用 del(即英文 delete “删除”的缩写)指令:

del superpowers["路易吉"]
# 路易吉已经从通讯录里被抹去了! 💨
python

动手试一试! 🎮#

打开你的 Python 编辑器,试着管理一个宠物叫声数据库吧:

运行代码,看看你的数据库是不是正确更新了!

太恭喜你了!你已经完成了整整 10 课的编程学习系列。现在你已经掌握了编程中所有最核心的基石。你可以与屏幕对话、保存变量、分叉路选择、循环执行任务、打包函数、整理背包列表、用代码画画、获取用户输入、摇随机骰子以及用字典映射。你已经准备好动手写你人生中的第一款小游戏了!🚀🎮

参考资料#