深入探讨Python中三种核心数据结构:列表、字典和元组。
📋 Python列表(List)
列表是Python中最常用的可变序列,使用方括号[]表示,可存储任意类型元素并支持动态修改。
核心特性:
- 有序可变:元素按插入顺序排列,支持索引访问和修改
- 异构存储:可同时包含数字、字符串、对象等不同类型数据
- 动态扩容:无需预先声明大小,自动管理内存
常用操作示例:
# 创建与基本操作
fruits = ['apple', 'banana', 'cherry']
fruits.append('orange')           # 末尾添加
fruits.insert(1, 'grape')        # 指定位置插入
fruits.remove('banana')          # 删除指定元素
fruits.pop()                     # 删除末尾元素# 切片操作
numbers = [0, 1, 2, 3, 4, 5]
subset = numbers[1:4]            # [1, 2, 3]
reverse = numbers[::-1]          # [5, 4, 3, 2, 1, 0]# 列表推导式(延续您之前的学习)
squares = [x**2 for x in range(6)]  # [0, 1, 4, 9, 16, 25]
🔑 Python字典(Dictionary)
字典是键值对的无序集合,使用花括号{}表示,提供高效的数据查找能力。
核心特性:
- 键值映射:通过唯一键访问对应值,键必须是不可变类型
- 无序存储:Python 3.7+保持插入顺序,但本质上仍为无序集合
- 快速查找:基于哈希表实现,查找时间复杂度为O(1)
常用操作示例:
# 创建与访问
person = {'name': 'Alice', 'age': 25, 'city': 'Beijing'}
print(person['name'])            # 'Alice'
print(person.get('email', 'N/A')) # 安全访问# 更新与遍历
person['age'] = 26               # 修改值
person['email'] = 'alice@example.com' # 添加新键值对for key, value in person.items():print(f"{key}: {value}")# 字典推导式(延续您之前的学习)
word_counts = {word: len(word) for word in ['hello', 'world', 'python']}
# {'hello': 5, 'world': 5, 'python': 6}
📦 Python元组(Tuple)
元组是不可变序列,使用圆括号()表示,适合存储不应修改的数据。
核心特性:
- 不可变性:创建后不能修改、添加或删除元素
- 有序存储:元素按插入顺序排列,支持索引访问
- 轻量高效:相比列表占用内存更少,访问速度更快
常用操作示例:
# 创建与访问
coordinates = (10, 20)
colors = ('red', 'green', 'blue')
single_tuple = (42,)             # 单元素元组必须有逗号# 元组解包
x, y = coordinates               # x=10, y=20
first, *rest = colors            # first='red', rest=['green', 'blue']# 作为字典键
locations = {(35, 139): 'Tokyo', (40, 116): 'Beijing'}
⚖️ 三种数据结构对比
| 特性 | 列表(List) | 字典(Dict) | 元组(Tuple) | 
|---|---|---|---|
| 可变性 | 可变 | 可变 | 不可变 | 
| 语法 | [] | {} | () | 
| 元素访问 | 索引 | 键 | 索引 | 
| 内存占用 | 中等 | 较高 | 较低 | 
| 典型用途 | 动态数据集合 | 键值映射 | 固定数据记录 | 
选择指南:
- 使用列表存储需要频繁修改的有序数据集合
- 使用字典存储需要通过键快速查找的数据映射
- 使用元组存储不应修改的固定数据记录或作为字典键
💡 实际应用场景
列表适用场景:
- 用户购物车商品列表
- 数据处理中的临时缓冲区
- 需要排序、过滤的动态数据集
字典适用场景:
- 用户信息存储(ID→用户详情)
- 配置参数管理
- 缓存数据实现
元组适用场景:
- 函数返回多个值
- 数据库记录表示
- 常量集合定义
