Nguyên tắc tối ưu vòng lặp áp dụng cho mọi ngôn ngữ: minimize công việc bên trong loop.
Mọi thứ trong loop thực thi mỗi iteration. Operation 1 microsecond lặp 1 triệu lần = 1 giây.
Không gọi len(list) bên trong loop hoặc điều kiện khởi tạo.
Ví dụ chậm
a = [i for i in range(1000000)]
for i in a:
print(i - len(a))
Ví dụ nhanh
a = [i for i in range(1000000)]
length = len(a)
for i in a:
print(i - length)
Kỹ thuật khác: Loop Unrolling (biến đổi loop giảm overhead, tăng binary size - space-time tradeoff). Dùng map, filter thay for loop explicit cũng có thể nhanh hơn.