Vòng lặp for là một câu lệnh luồng điều khiển thực thi mã cho một số lần lặp được xác định trước. Từ khóa được sử dụng trong câu lệnh luồng điều khiển này là “for”. Khi đã biết trước số lần lặp, vòng lặp for được sử dụng
Vòng lặp for được chia thành hai phần -
Tiêu đề - Phần này chỉ định lần lặp của vòng lặp. Trong phần tiêu đề, biến vòng lặp cũng được khai báo, báo cho phần thân biết bước lặp nào đang được thực hiện
Nội dung - Phần nội dung chứa câu lệnh được thực hiện trên mỗi lần lặp
Các câu lệnh khởi tạo, kiểm tra điều kiện và lặp được viết ở đầu vòng lặp
Nó chỉ được sử dụng khi biết trước số lần lặp
Nếu điều kiện không được đề cập trong vòng lặp 'for', thì vòng lặp sẽ lặp lại vô số lần
Việc khởi tạo chỉ được thực hiện một lần và nó không bao giờ được lặp lại
Câu lệnh lặp được viết ở đầu
Do đó, nó thực thi khi tất cả các câu lệnh trong vòng lặp đã được thực thi
cú pháp
for[initialization; condition; iteration]{ //body of the 'for' loop }
Ví dụ
Chương trình sau in tất cả các phần tử danh sách bằng vòng lặp for -
đầu ra
Khi thực thi, chương trình trên sẽ tạo đầu ra sau -
Input list elements: 10 20 30 40 50
Trong khi lặp lại
Một vòng lặp chạy một câu lệnh hoặc một tập hợp các câu lệnh cho một điều kiện đúng nhất định. Vòng lặp này được đại diện bởi từ khóa "trong khi. " Khi số lần lặp không xác định, vòng lặp "while" được sử dụng. Câu lệnh được lặp lại cho đến khi giá trị boolean là sai. Vì điều kiện được kiểm tra khi bắt đầu vòng lặp while nên nó còn được gọi là vòng lặp kiểm tra trước
Việc khởi tạo và kiểm tra điều kiện được thực hiện ở đầu vòng lặp
Nó chỉ được sử dụng khi không biết số lần lặp
Nếu điều kiện không được đề cập trong vòng lặp 'while', nó sẽ dẫn đến lỗi biên dịch
Nếu việc khởi tạo được thực hiện khi điều kiện đang được kiểm tra, thì việc khởi tạo xảy ra mỗi khi vòng lặp được lặp qua
Câu lệnh lặp có thể được viết trong bất kỳ điểm nào bên trong vòng lặp
cú pháp
while [ condition] { statements; //body of the loop }
Ví dụ
Chương trình sau in tất cả các phần tử danh sách bằng vòng lặp for -
đầu ra
Khi thực thi, chương trình trên sẽ tạo đầu ra sau -
1 2 3 4 5 6 7 8 9
Khi nào bạn nên sử dụng vòng lặp For và While?
Vòng lặp for được sử dụng khi chúng ta biết số lần lặp, tức là một câu lệnh phải được thực hiện bao nhiêu lần. Đó là lý do tại sao khi chúng ta khởi tạo vòng lặp for, chúng ta phải xác định điểm kết thúc
Vòng lặp while được sử dụng khi không biết số lần lặp. Nó được sử dụng khi chúng ta cần kết thúc vòng lặp với điều kiện khác với số lần lặp lại. Không cần thiết phải biết điều kiện trước thời hạn trong trường hợp này. Đó là lý do tại sao chúng ta có thể sử dụng biểu thức boolean trong quá trình khởi tạo vòng lặp
Khi không có điều kiện
Nếu không có điều kiện nào được chỉ định trong vòng lặp for và while, vòng lặp sẽ lặp vô tận
Trong trường hợp không có điều kiện, sau đây là sự khác biệt giữa vòng lặp for và vòng lặp while -
Đối với Vòng lặp - Trong ví dụ sau, vòng lặp sẽ chạy vô hạn lần
Ví dụ
l = [1] for m in l: print["TutorialsPoint"] l.append[m]
đầu ra
Khi thực thi, chương trình trên sẽ tạo đầu ra sau -
TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint . . . . runs infinite times
Chúng tôi đã bắt đầu với một danh sách và khởi tạo nó với một giá trị ngẫu nhiên duy nhất. Sau đó, sử dụng vòng lặp for và toán tử in, chúng ta duyệt qua các phần tử của danh sách. Bên trong vòng lặp, nó sẽ in một số văn bản ngẫu nhiên, sau đó chúng tôi đã thêm một phần tử khác vào danh sách, vì vậy vòng lặp for sẽ được thực thi lại do phần tử mới. Theo cách này, vòng lặp được thực hiện vô số lần
Vòng lặp While − Trong ví dụ sau, vòng lặp sẽ chạy vô hạn lần
Ví dụ
while True: print["TutorialsPoint"]
đầu ra
Khi thực thi, chương trình trên sẽ tạo đầu ra sau -
TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint TutorialsPoint . . . . runs infinite times
Bảng phân biệt
Cơ sở so sánh Vòng lặp For LoopWhileKeywordUses for keywordUses while keywordUsedFor Vòng lặp được sử dụng khi số lần lặp đã biết. Vòng lặp While được sử dụng khi số lần lặp không xác định. không có điều kiệnVòng lặp chạy vô hạn khi không có điều kiệnTrả về lỗi thời gian biên dịch nếu không có điều kiệnBản chất của quá trình khởi tạoSau khi hoàn thành, nó không thể lặp lạiTrong vòng lặp while, nó có thể được lặp lại ở mỗi lần lặp. Chức năng Để lặp lại, chức năng phạm vi hoặc xrange được sử dụng. Không có chức năng như vậy trong vòng lặp while. Khởi tạo dựa trên phép lặp Được thực hiện ở đầu vòng lặp. Trong vòng lặp while, có thể thực hiện điều này ở bất kỳ đâu trong thân vòng lặp. Hỗ trợ trình tạo Vòng lặp for của Python có thể lặp qua các trình tạo. Trong khi các vòng lặp không thể được lặp lại trực tiếp trên Trình tạo. Tốc độ Vòng lặp for nhanh hơn vòng lặp while. Vòng lặp While tương đối chậm hơn so với vòng lặp forPhần kết luận
Trong bài viết này, chúng ta đã tìm hiểu về sự khác biệt giữa vòng lặp for và vòng lặp while, cũng như cách thức hoạt động của vòng lặp for và while thông qua các ví dụ