Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Best practices cho vòng lặp trong Python

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.