兵器篇-Day28 字典 dict 基础,键值对存储

0 次阅读 2026-10-17 19:48

📖 知识点

字典 dict,使用大括号 {} 包裹,里面存放一组一组的键值对 key:value

  • key 键:查找的索引标签,必须是不可变类型(字符串、数字),同一个字典里 key 不能重复
  • value 值:存放的数据,可以是任意类型(字符串、数字、列表都可以)
  • 键值对之间用逗号隔开

创建字典示例

# 简单字典
student = {"name":"小明", "age":16, "city":"郑州"}

# 空字典
empty_dict = {}

通过键取值

语法:字典[键名]

student = {"name":"小明", "age":16, "city":"郑州"}
print(student["name"]) # 小明
print(student["age"])  # 16

两个核心特性

  1. key 唯一:写重复 key 时,后面的会覆盖前面的值
info = {"a":1, "a":99}
print(info) # {'a': 99}
  1. 无序(入门阶段理解:不靠顺序取值,靠 key 取值),查找数据不需要遍历,直接按键获取

⚠️ 避坑提醒 如果写一个不存在的 key,字典["不存在的键"] 会直接报错 KeyError!

⚔️ Kata 实战任务

任务:创建学员信息字典 需求:

  1. 创建字典 stu_info,包含三组键值对
    • name:阿凯
    • level:3
    • skill:Python 基础
  2. 打印完整字典
  3. 分别取出 name、skill 对应的值打印
  4. 单独打印学员等级 level

预期输出示例:

完整学员字典: {'name': '阿凯', 'level': 3, 'skill': 'Python基础'}
学员姓名: 阿凯
主修技能: Python基础
修炼等级: 3

✅ 参考代码

# 创建学员字典
stu_info = {"name": "阿凯", "level": 3, "skill": "Python基础"}

# 打印完整字典
print("完整学员字典:", stu_info)

# 通过键读取对应的值
print("学员姓名:", stu_info["name"])
print("主修技能:", stu_info["skill"])
print("修炼等级:", stu_info["level"])

🧠 思考题

  1. 如果尝试 stu_info["score"],score 这个键不存在,会发生什么?
  2. 字典的 key 能不能用列表作为键?为什么?