第一章:列表与字典
1.1 列表的工程级应用
1.1.1 动态数组实现机制
Python列表底层采用动态数组结构,初始分配8个元素空间,当空间不足时按0,4,8,16,25,35...的公式扩容,每次扩容增加约12.5%的容量
通过sys模块可验证扩容过程:
import sys
lst = []
prev_size = 0
for i in range(100):current_size = sys.getsizeof(lst)if current_size != prev_size:print(f"元素数量:{len(lst):<3} 内存占用:{current_size}字节")prev_size = current_sizelst.append(None)
1.1.2 多维数据处理
嵌套列表实现矩阵运算:
matrix = [[1,2,3],[4,5,6],[7,8,9]
]
# 矩阵转置
transposed = [[row[i] for row in matrix] for i in range(3)]
print(transposed) # [[1,4,7], [2,5,8], [3,6,9]]# 使用numpy优化
import numpy as np
np_matrix = np.array(