课程主题
- 讲师:小甲鱼
- 内容:Python字典(映射类型)的创建与访问
- 类比引入:查牛津字典(按字母S定位单词,而非逐页翻)
字典的核心概念
- 别称:哈希(hash)、关系数组(如Perl语言)
- 类型定位:Python唯一的映射类型,区别于序列类型(字符串、列表、元组)
- 核心组成:键(key)+ 值(value)
- 键:相当于字典单词(如品牌名),可是整型、字符串等
- 值:相当于单词含义(如品牌口号)
- 关联方式:键和值用冒号分隔,每对键值称为一个项
映射类型 vs 序列类型
- 序列类型特点:以数组存储,通过索引值访问,索引与数据无关联
- 示例:brand列表与slogan列表,靠相同索引对应品牌和口号,效率低
- 映射类型特点:通过键直接访问值,键值一一对应,简洁高效
- 示例:字典中用品牌名作为键,直接获取对应口号
字典的创建方式
- 直接用大括号
{}创建- 格式:
{键1:值1, 键2:值2,...} - 示例:
brand_slogan = {'李宁':'一切皆有可能', '耐克':'just do it'}
- 格式:
- 创建空字典
- 方式1:
empty_dict = {} - 方式2:
empty_dict = dict()
- 方式1:
- 用
dict()工厂函数创建- 方式1:传入映射关系(元组/列表)
- 示例:
dict1 = dict([('a',105), ('s',115), ('c',67)])
- 示例:
- 方式2:传入关键字参数
- 示例:
dict2 = dict(小甲鱼='让编程改变世界', 苍井空='让AV征服所有宅男') - 注意:关键字参数的键不能加引号,否则报错
- 示例:
- 方式1:传入映射关系(元组/列表)
- 直接给字典的键赋值(新增/修改项)
- 键存在:修改对应的值
- 示例:
dict2['苍井空'] = '所有av从业者都要学编程'
- 示例:
- 键不存在:新增一组键值对
- 示例:
dict2['爱迪生'] = '天才是99%汗水+1%灵感'
- 示例:
- 键存在:修改对应的值
字典的访问方式
- 格式:
字典名[键] - 示例:
print(brand_slogan['李宁'])→ 输出一切皆有可能 - 特点:与序列类型的索引访问语法相似,但括号内是键而非索引值