Người ta thường tìm thấy các biểu thức thuộc loại này trong các câu hỏi python trên SO. Hoặc chỉ để truy cập tất cả các mục của tệp có thể lặp lại
for i in range(len(a)):
print(a[i])
Đó chỉ là một cách viết rườm rà:
for e in a:
print(e)
Hoặc để gán cho các phần tử của có thể lặp lại:
for i in range(len(a)):
a[i] = a[i] * 2
Cái nào phải giống như:
for i, e in enumerate(a):
a[i] = e * 2
# Or if it isn't too expensive to create a new iterable
a = [e * 2 for e in a]
Hoặc để lọc qua các chỉ số:
for i in range(len(a)):
if i % 2 == 1: continue
print(a[i])
Có thể được diễn đạt như thế này:
for e in a [::2]:
print(e)
Hoặc khi bạn chỉ cần độ dài của danh sách chứ không cần nội dung của nó:
for _ in range(len(a)):
doSomethingUnrelatedToA()
Có thể là:
for _ in a:
doSomethingUnrelatedToA()
Trong python chúng tôi có enumerate
, cắt lát filter
, sorted
, vv ... Như trăn for
cấu trúc nhằm lặp trên iterables và không chỉ dao động của số nguyên, là có thực tế trường hợp sử dụng khi bạn cần in range(len(a))
?
range(len(a))
thường là những người khá thiếu kinh nghiệm với Python (mặc dù không nhất thiết với lập trình nói chung).