📖 知识点
字典 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两个核心特性
- key 唯一:写重复 key 时,后面的会覆盖前面的值
info = {"a":1, "a":99}
print(info) # {'a': 99}- 无序(入门阶段理解:不靠顺序取值,靠 key 取值),查找数据不需要遍历,直接按键获取
⚠️ 避坑提醒 如果写一个不存在的 key,字典["不存在的键"] 会直接报错 KeyError!
⚔️ Kata 实战任务
任务:创建学员信息字典 需求:
- 创建字典
stu_info,包含三组键值对- name:阿凯
- level:3
- skill:Python 基础
- 打印完整字典
- 分别取出 name、skill 对应的值打印
- 单独打印学员等级 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"])🧠 思考题
- 如果尝试
stu_info["score"],score 这个键不存在,会发生什么? - 字典的 key 能不能用列表作为键?为什么?
行者孙Python