Khóa học python

Vòng lặp while trong Python

0 phút đọc

Vòng lặp while là một trong những cấu trúc điều khiển quan trọng và phổ biến nhất trong Python. Nó cho phép bạn lặp lại một khối mã nhiều lần dựa trên một điều kiện cho trước. Trong bài viết này, chúng ta sẽ tìm hiểu chi tiết về vòng lặp while trong Python, cách sử dụng nó với các loại dữ liệu khác nhau, và các ví dụ minh họa cụ thể.

Tổng quan về vòng lặp while

Vòng lặp while trong Python được sử dụng để lặp lại một khối mã miễn là một điều kiện cho trước là đúng. Cú pháp cơ bản của vòng lặp while như sau:

python Copy
while điều_kiện:
    khối_lệnh

Trong đó:

  • điều_kiện là biểu thức điều kiện được kiểm tra trước mỗi lần lặp.
  • khối_lệnh là khối mã sẽ được thực thi nếu điều_kiện là đúng.

Cú pháp của vòng lặp while

Cú pháp của vòng lặp while rất đơn giản và dễ hiểu. Dưới đây là một ví dụ cơ bản:

python Copy
count = 0
while count < 5:
    print("Số đếm là:", count)
    count += 1

Kết quả:

Copy
Số đếm là: 0
Số đếm là: 1
Số đếm là: 2
Số đếm là: 3
Số đếm là: 4

Trong ví dụ này, biến count bắt đầu từ 0 và tăng lên 1 sau mỗi lần lặp. Vòng lặp sẽ tiếp tục chạy cho đến khi count không còn nhỏ hơn 5.

Vòng lặp while vô hạn

Một vòng lặp while có thể trở thành vòng lặp vô hạn nếu điều kiện của nó luôn đúng. Điều này có thể hữu ích trong một số trường hợp, chẳng hạn như khi bạn muốn chương trình chạy liên tục cho đến khi người dùng dừng nó.

Ví dụ về vòng lặp vô hạn:

python Copy
while True:
    print("Đây là vòng lặp vô hạn. Nhấn Ctrl+C để dừng.")

Trong ví dụ này, điều kiện True luôn đúng, do đó vòng lặp sẽ chạy mãi mãi cho đến khi bạn dừng nó bằng cách nhấn Ctrl+C.

Vòng lặp while-else

Python cho phép bạn sử dụng câu lệnh else cùng với vòng lặp while. Khối lệnh else sẽ được thực thi khi vòng lặp kết thúc tự nhiên mà không gặp phải câu lệnh break.

Cú pháp của vòng lặp while-else:

python Copy
while điều_kiện:
    khối_lệnh
else:
    khối_lệnh_else

Ví dụ về vòng lặp while-else:

python Copy
count = 0
while count < 5:
    print("Số đếm là:", count)
    count += 1
else:
    print("Vòng lặp đã kết thúc.")

Kết quả:

Copy
Số đếm là: 0
Số đếm là: 1
Số đếm là: 2
Số đếm là: 3
Số đếm là: 4
Vòng lặp đã kết thúc.

Trong ví dụ này, khối lệnh else sẽ được thực thi sau khi vòng lặp while kết thúc tự nhiên.

Vòng lặp while với câu lệnh break

Câu lệnh break được sử dụng để kết thúc vòng lặp ngay lập tức, bất kể điều kiện của vòng lặp có còn đúng hay không. Điều này có nghĩa là vòng lặp sẽ bị dừng và chương trình sẽ tiếp tục thực thi câu lệnh ngay sau vòng lặp.

Ví dụ về câu lệnh break:

python Copy
count = 0
while count < 10:
    print("Số đếm là:", count)
    if count == 5:
        break
    count += 1

Kết quả:

Copy
Số đếm là: 0
Số đếm là: 1
Số đếm là: 2
Số đếm là: 3
Số đếm là: 4
Số đếm là: 5

Trong ví dụ này, vòng lặp while sẽ bị kết thúc bởi câu lệnh break khi count bằng 5.

Vòng lặp while với câu lệnh continue

Câu lệnh continue được sử dụng để bỏ qua phần còn lại của thân vòng lặp cho lần lặp hiện tại và chuyển ngay đến lần lặp tiếp theo. Điều này có nghĩa là mã từ lần lặp hiện tại sẽ không được thực thi, và vòng lặp sẽ tiếp tục lặp lại cho đến khi điều kiện của vòng lặp không còn đúng.

Ví dụ về câu lệnh continue:

python Copy
count = 0
while count < 10:
    count += 1
    if count % 2 == 0:
        continue
    print("Số lẻ là:", count)

Kết quả:

Copy
Số lẻ là: 1
Số lẻ là: 3
Số lẻ là: 5
Số lẻ là: 7
Số lẻ là: 9

Trong ví dụ này, câu lệnh continue sẽ bỏ qua các số chẵn và chỉ in ra các số lẻ.

Vòng lặp while với một dòng lệnh

Nếu khối lệnh trong vòng lặp while chỉ có một dòng lệnh, bạn có thể đặt nó trên cùng một dòng với câu lệnh while. Điều này giúp mã ngắn gọn hơn.

Ví dụ về vòng lặp while với một dòng lệnh:

python Copy
count = 0
while count < 5: print("Số đếm là:", count); count += 1

Kết quả:

Copy
Số đếm là: 0
Số đếm là: 1
Số đếm là: 2
Số đếm là: 3
Số đếm là: 4

Trong ví dụ này, vòng lặp while và khối lệnh của nó được viết trên cùng một dòng.

Vòng lặp while lồng nhau

Bạn có thể sử dụng vòng lặp while lồng nhau để lặp qua các dãy phức tạp hơn. Ví dụ, bạn có thể lặp qua một danh sách các danh sách:

Ví dụ về vòng lặp while lồng nhau:

python Copy
i = 0
while i < 3:
    j = 0
    while j < 3:
        print(f"i: {i}, j: {j}")
        j += 1
    i += 1

Kết quả:

Copy
i: 0, j: 0
i: 0, j: 1
i: 0, j: 2
i: 1, j: 0
i: 1, j: 1
i: 1, j: 2
i: 2, j: 0
i: 2, j: 1
i: 2, j: 2

Trong ví dụ này, vòng lặp while bên ngoài lặp qua các giá trị của i từ 0 đến 2, và vòng lặp while bên trong lặp qua các giá trị của j từ 0 đến 2.

Vòng lặp while với điều kiện phức tạp

Bạn có thể sử dụng các toán tử logic như and, or để tạo ra các điều kiện phức tạp cho vòng lặp while.

Ví dụ về vòng lặp while với điều kiện phức tạp:

python Copy
count = 0
while count < 10 and count % 2 == 0:
    print("Số đếm là:", count)
    count += 2

Kết quả:

Copy
Số đếm là: 0
Số đếm là: 2
Số đếm là: 4
Số đếm là: 6
Số đếm là: 8

Trong ví dụ này, vòng lặp while sẽ tiếp tục chạy miễn là count nhỏ hơn 10 và là số chẵn.

Kết luận

Vòng lặp while là một công cụ mạnh mẽ và linh hoạt trong Python, cho phép bạn lặp lại một khối mã nhiều lần dựa trên một điều kiện cho trước. Bằng cách nắm vững cách sử dụng vòng lặp while với các loại dữ liệu khác nhau và các câu lệnh điều khiển như breakcontinue, bạn có thể viết mã Python ngắn gọn, dễ đọc và hiệu quả hơn. Việc sử dụng câu lệnh else cùng với vòng lặp while cũng giúp bạn kiểm soát luồng thực thi của chương trình một cách linh hoạt và chính xác hơn.

Avatar
Được viết bởi

Admin Team

Gợi ý câu hỏi phỏng vấn

Không có dữ liệu

Không có dữ liệu

Gợi ý bài viết
Không có dữ liệu

Không có dữ liệu

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào