Tối ưu Python bắt đầu bằng việc profile để tìm nút thắt cổ chai thực sự — không bao giờ đoán mò. Bản chất thông dịch, động của Python khiến nó chậm hơn các ngôn ngữ biên dịch, nên việc tối ưu tập trung vào thuật toán tốt hơn, tận dụng các thư viện viết bằng C, và giảm chi phí của interpreter trong các hot path.
Profile trước
import cProfile
cProfile.run("my_function()") # cho thấy thời gian dành cho mỗi lời gọi hàm
# profiling ở cấp dòng (bên thứ ba)
