Python 核心数据结构详解
Python 提供了多种内置的数据结构,用于高效地存储和操作数据。理解这些结构的特性、使用场景及性能差异是编写高质量 Python 代码的基础。本文将详细介绍列表(List)、元组(Tuple)、集合(Set)和字典(Dictionary)的使用方法、底层原理及最佳实践。
1. 列表 (List)
列表是 Python 中最常用的可变序列类型。它允许存储任意类型的对象,并且支持动态调整大小。列表区别于字符串和元组的最重要特点是其可变性(Mutability),即可以在创建后修改其中的元素。
1.1 常用方法
| 方法 | 描述 |
|---|---|
list.append(x) | 在列表末尾添加一个元素 x。时间复杂度为 O(1)。 |
list.extend(L) | 将另一个可迭代对象 L 中的所有元素添加到列表末尾。 |
list.insert(i, x) | 在索引 i 处插入元素 x。由于需要移动后续元素,时间复杂度为 O(n)。 |
list.remove(x) | 删除列表中第一个值为 x 的元素。若不存在则抛出 ValueError。 |
list.pop([i]) | 移除并返回索引 i 处的元素。默认移除最后一个元素。 |
list.clear() | 清空列表中的所有元素。 |
list.index(x) | 返回列表中第一个值为 x 的元素的索引。 |
list.count(x) | 统计元素 x 在列表中出现的次数。 |
list.sort() | 原地对列表进行排序。 |
list.reverse() | 原地反转列表顺序。 |
list.copy() | 返回列表的浅复制。 |
1.2 示例演示
# 基础操作
my_list = [1, 2, 3]
my_list.append(4) # [1, 2, 3, 4]
my_list.insert(0, 0) # [0, 1, 2, 3, 4]
my_list.remove(2) # [0, 1, 3, 4]
removed_item = my_list.pop() # 4, my_list becomes [0, 1, 3]
注意:像 insert, remove, sort 等修改列表的方法通常返回 None,而不是修改后的列表。


