Cách sử dụng lệnh continue trong Python – Làm chủ điều khiển vòng lặp

1. Hiểu cơ bản về lệnh continue

Lệnh continue trong Python được sử dụng trong cấu trúc vòng lặp để bỏ qua vòng lặp hiện tại và chuyển sang vòng lặp tiếp theo khi một điều kiện cụ thể được đáp ứng. Điều này hữu ích khi bạn muốn loại bỏ một số phần tử khỏi quá trình xử lý.

1.1 Cú pháp cơ bản của continue

Lệnh continue được sử dụng trong vòng lặp for hoặc while. Cú pháp cơ bản như sau:

for i in range(5):
    if i == 2:
        continue
    print(i)

Trong đoạn mã này, khi i bằng 2, lệnh continue sẽ được thực thi và bỏ qua lệnh print. Do đó, kết quả xuất ra sẽ là 0, 1, 3, 4.

2. Cách sử dụng continue trong vòng lặp for

Vòng lặp for được sử dụng rộng rãi để thực hiện các thao tác lặp đi lặp lại. Khi sử dụng continue, bạn có thể bỏ qua phần còn lại của lần lặp đó nếu một điều kiện cụ thể được đáp ứng.

2.1 Ví dụ cơ bản về vòng lặp for

Đoạn mã dưới đây duyệt qua một danh sách số và bỏ qua các phần tử thỏa mãn điều kiện.

numbers = [1, 2, 3, 4, 5]
for num in numbers:
    if num % 2 == 0:
        continue
    print(num)

Trong đoạn mã này, các số chẵn sẽ bị bỏ qua do lệnh continue. Kết quả xuất ra sẽ là 1, 3, 5.

2.2 Sử dụng continue trong vòng lặp for lồng nhau

Khi sử dụng continue trong vòng lặp lồng nhau, nó chỉ ảnh hưởng đến vòng lặp bên trong cùng. Ví dụ:

for i in range(3):
    for j in range(3):
        if j == 1:
            continue
        print(i, j)

Trong đoạn mã này, khi j bằng 1, lệnh continue sẽ bỏ qua việc in ra giá trị đó. Kết quả xuất ra sẽ là (0, 0), (0, 2), (1, 0), (1, 2), (2, 0), (2, 2).

3. Cách sử dụng continue trong vòng lặp while

Trong vòng lặp while, continue cũng được sử dụng để bỏ qua lần lặp hiện tại và chuyển sang lần tiếp theo.

3.1 Ví dụ cơ bản về vòng lặp while

Đoạn mã dưới đây minh họa cách sử dụng continue trong vòng lặp while.

counter = 0
while counter < 5:
    counter += 1
    if counter == 3:
        continue
    print(counter)

Trong đoạn mã này, khi counter bằng 3, lệnh continue được thực thi, bỏ qua lệnh print. Do đó, kết quả xuất ra sẽ là 1, 2, 4, 5.

3.2 Kiểm tra đầu vào trong vòng lặp while

Bạn có thể sử dụng continue để bỏ qua những lần nhập không hợp lệ. Ví dụ:

while True:
    text = input("Nhập một số (hoặc 'exit' để thoát): ")
    if text == 'exit':
        break
    if text == '':
        print("Không được để trống, vui lòng thử lại.")
        continue
    print(f"Bạn đã nhập: {text}")

Trong đoạn mã này, nếu người dùng nhập một chuỗi trống, chương trình sẽ hiển thị thông báo và yêu cầu nhập lại thay vì tiếp tục xử lý.

4. Kết hợp continue với else

Trong Python, bạn có thể sử dụng khối else cùng với vòng lặp for hoặc while. Khối else sẽ được thực thi ngay cả khi continue được gọi, giúp điều khiển luồng chương trình linh hoạt hơn.

4.1 Ví dụ về khối else

Ví dụ sau đây minh họa cách sử dụng else với continue để thực hiện một hành động sau khi vòng lặp kết thúc.

for i in range(3):
    for j in range(3):
        if j == 1:
            continue
        print(i, j)
    else:
        print("Vòng lặp bên trong đã hoàn thành.")

Trong đoạn mã này, ngay cả khi continue được gọi, khối else vẫn được thực thi sau khi vòng lặp kết thúc.

5. Sự khác biệt giữa continuebreak

Trong Python, cả continuebreak đều được sử dụng để kiểm soát vòng lặp, nhưng chúng hoạt động theo cách khác nhau:

  • continue: Bỏ qua phần còn lại của vòng lặp hiện tại và tiếp tục vòng lặp tiếp theo.
  • break: Kết thúc vòng lặp ngay lập tức, không thực hiện các lần lặp tiếp theo.

5.1 So sánh qua ví dụ

Dưới đây là ví dụ về sự khác biệt giữa continuebreak:

for i in range(5):
    if i == 2:
        continue
    print("continue:", i)

for i in range(5):
    if i == 2:
        break
    print("break:", i)

Kết quả xuất ra:

continue: 0
continue: 1
continue: 3
continue: 4

break: 0
break: 1

Trong đoạn mã trên, khi gặp số 2:

  • continue bỏ qua số đó nhưng tiếp tục vòng lặp.
  • break kết thúc vòng lặp ngay lập tức.
So sánh break và continue

6. Ứng dụng thực tế của continue

Lệnh continue rất hữu ích trong các tình huống thực tế, ví dụ như:

  • Bỏ qua dữ liệu không hợp lệ trong danh sách.
  • Lọc các số chẵn hoặc lẻ trong danh sách.
  • Kiểm tra điều kiện đầu vào của người dùng.

6.1 Loại bỏ dữ liệu không hợp lệ

Ví dụ dưới đây cho thấy cách continue được sử dụng để bỏ qua dữ liệu không hợp lệ trong danh sách:

data = ["123", "abc", "456", "xyz", "789"]

for item in data:
    if not item.isdigit():
        continue
    print("Số hợp lệ:", item)

Kết quả xuất ra:

Số hợp lệ: 123
Số hợp lệ: 456
Số hợp lệ: 789

6.2 Lọc số chẵn hoặc số lẻ

Bạn có thể sử dụng continue để lọc các số chẵn hoặc số lẻ như sau:

numbers = range(1, 11)

for num in numbers:
    if num % 2 == 0:
        continue
    print("Số lẻ:", num)

Kết quả xuất ra:

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

7. Kết luận

Lệnh continue trong Python là một công cụ mạnh mẽ để kiểm soát luồng thực thi trong vòng lặp. Nó giúp bỏ qua một số phần tử nhất định mà không cần phải dừng toàn bộ vòng lặp. Điều này giúp tối ưu hóa chương trình và làm cho mã nguồn dễ đọc hơn.

Qua bài viết này, bạn đã học cách sử dụng continue trong vòng lặp forwhile, so sánh nó với break, và ứng dụng thực tế của nó. Hãy thử áp dụng trong các bài tập lập trình của bạn để hiểu rõ hơn!