第一章:列表與字典
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(