小甲鱼Python学习笔记

课程主题

  • 讲师:小甲鱼
  • 内容:Python字典(映射类型)的创建与访问
  • 类比引入:查牛津字典(按字母S定位单词,而非逐页翻)

字典的核心概念

  • 别称:哈希(hash)、关系数组(如Perl语言)
  • 类型定位:Python唯一的映射类型,区别于序列类型(字符串、列表、元组)
  • 核心组成:键(key)+ 值(value)
    • 键:相当于字典单词(如品牌名),可是整型、字符串等
    • 值:相当于单词含义(如品牌口号)
    • 关联方式:键和值用冒号分隔,每对键值称为一个

映射类型 vs 序列类型

  • 序列类型特点:以数组存储,通过索引值访问,索引与数据无关联
    • 示例:brand列表与slogan列表,靠相同索引对应品牌和口号,效率低
  • 映射类型特点:通过直接访问值,键值一一对应,简洁高效
    • 示例:字典中用品牌名作为键,直接获取对应口号

字典的创建方式

  1. 直接用大括号 {} 创建
    • 格式:{键1:值1, 键2:值2,...}
    • 示例:brand_slogan = {'李宁':'一切皆有可能', '耐克':'just do it'}
  2. 创建空字典
    • 方式1:empty_dict = {}
    • 方式2:empty_dict = dict()
  3. dict() 工厂函数创建
    • 方式1:传入映射关系(元组/列表)
      • 示例:dict1 = dict([('a',105), ('s',115), ('c',67)])
    • 方式2:传入关键字参数
      • 示例:dict2 = dict(小甲鱼='让编程改变世界', 苍井空='让AV征服所有宅男')
      • 注意:关键字参数的键不能加引号,否则报错
  4. 直接给字典的键赋值(新增/修改项)
    • 键存在:修改对应的值
      • 示例:dict2['苍井空'] = '所有av从业者都要学编程'
    • 键不存在:新增一组键值对
      • 示例:dict2['爱迪生'] = '天才是99%汗水+1%灵感'

字典的访问方式

  • 格式:字典名[键]
  • 示例:print(brand_slogan['李宁']) → 输出 一切皆有可能
  • 特点:与序列类型的索引访问语法相似,但括号内是而非索引值