Python 进阶

Python 词典详解

词典的基本概念

词典是 Python 内置的数据结构,用于存储键值对的集合。其工作原理类似于现实中的词典 - 通过键(关键词)来查找对应的值(定义)。

词典语法

Python 词典的基本语法如下:

dictionary = { key1: value1, key2: value2 }
  • 词典通常存储在变量中以便后续使用
  • 使用花括号{}包裹键值对
  • 每个键对应一个值,键必须是唯一的且不可变
  • 值可以重复且可以是任意数据类型
  • 键值对之间用逗号分隔

词典示例

以下是存储披萨信息的词典示例:

pizza = { 'name': 'Margherita Pizza', 'price': 8.9, 'calories_per_slice': 250, 'toppings': ['mozzarella', 'basil'] }

创建词典的替代方法

可以使用dict()构造函数创建词典:

pizza = dict([ ('name', 'Margherita Pizza'), ('price', 8.9), ('calories_per_slice', 250), ('toppings', ['mozzarella', 'basil']) ])

访问和修改词典

  • 访问值:dictionary[key]

    pizza['name'] # 返回 'Margherita Pizza'
  • 修改值:

    pizza['name'] = 'Margherita' print(pizza['name']) # 输出 'Margherita'

常用词典方法

  1. .get(key, default)- 安全获取值

    pizza.get('toppings', []) # 返回 ['mozzarella', 'basil'] 或空列表
  2. .keys()- 获取所有键

    pizza.keys() # dict_keys(['name', 'price', 'calories_per_slice'])
  3. .values()- 获取所有值

    pizza.values() # dict_values(['Margherita Pizza', 8.9, 250])
  4. .items()- 获取所有键值对

    pizza.items() # dict_items([('name', 'Margherita Pizza'), ('price', 8.9)])
  5. .clear()- 清空词典

    pizza.clear()
  6. .pop(key, default)- 移除并返回指定键的值

    pizza.pop('price', 10)
  7. .popitem()- 移除最后插入的项(Python 3.7+)

    pizza.popitem()
  8. .update()- 更新词典

    pizza.update({'price': 15, 'total_time': 25})

更新后的词典:

{ 'name': 'Margherita Pizza', 'price': 15, 'calories_per_slice': 250, 'toppings': ['mozzarella', 'basil'], 'total_time': 25 }