Python cho phép một "if
" tình trạng comprehensions danh sách, ví dụ:điều kiện Compound trong một vòng lặp for
[l for l in lines if l.startswith('example')]
Tính năng này là mất tích trong thường xuyên "for
" vòng lặp, như vậy trong sự vắng mặt của:
for line in lines if line.startswith('example'):
statements
cần đánh giá điều kiện trong vòng lặp:
for line in lines:
if line.startswith('example'):
statements
hoặc để nhúng biểu thức trình tạo, như:
for line in [l for l in lines if l.startswith('example')]:
statements
Hiểu biết của tôi có chính xác không? Có một cách tốt hơn hoặc nhiều hơn pythonic hơn những người tôi liệt kê ở trên để đạt được kết quả tương tự của việc thêm một điều kiện trong vòng lặp for?
Hãy lưu ý rằng "dòng" đã được chọn làm ví dụ, bất kỳ bộ sưu tập hoặc trình tạo nào cũng có thể ở đó.
Bạn hỏi làm thế nào để có được điều kiện hợp chất trong một vòng lặp for ? –
Nhưng chúng giống hệt nhau. Bạn đọc danh sách hiểu từ trái sang phải, và nó chứa các chức năng chính xác giống như đầy đủ cho vòng lặp. –
Bạn có thể nói chính xác câu hỏi của bạn là gì không? –