Khi làm việc với vòng lặp, đôi khi bạn muốn bỏ qua một vài bước nhất định và chuyển sang bước tiếp theo. Python cung cấp câu lệnh continue để thực hiện việc này một cách linh hoạt. Trong bài viết này, chúng ta sẽ khám phá cách continue hoạt động và cách sử dụng câu lệnh này để giải quyết các bài toán thực tế.
Lệnh continue trong Python là gì?
Câu lệnh continue
trong Python là một lệnh được sử dụng để bỏ qua phần còn lại của khối lệnh hiện tại và chuyển trực tiếp điều khiển về đầu vòng lặp, để bắt đầu lần lặp tiếp theo. Khi gặp câu lệnh continue
, vòng lặp sẽ bắt đầu lần lặp kế tiếp mà không thực hiện các câu lệnh còn lại trong lần lặp hiện tại.
Câu lệnh continue
có tác dụng ngược lại so với câu lệnh break
. Continue
bỏ qua các câu lệnh còn lại trong lần lặp hiện tại và bắt đầu lần lặp tiếp theo.
Cú pháp của lệnh continue
Cú pháp của câu lệnh continue
như sau:
vòng_lặp:
kiểm_tra_điều_kiện:
continue
Flowchart của lệnh continue trong Python
Sơ đồ này thể hiện rõ hơn cách câu lệnh continue
hoạt động trong vòng lặp.
Lệnh continue trong Python với vòng lặp for
Lệnh continue
trong Python có thể được sử dụng bên trong vòng lặp for
. Khi dùng, bạn cần kết hợp lệnh continue
với một câu lệnh if
để kiểm tra một điều kiện cụ thể. Nếu điều kiện kiểm tra là ĐÚNG (TRUE
), lệnh continue
sẽ bỏ qua lần lặp hiện tại và chuyển sang lần lặp tiếp theo của vòng lặp for
.
Ví dụ
Hãy xem qua một ví dụ dưới đây để hiểu cách lệnh continue
hoạt động trong vòng lặp for
:
for letter in 'Python':
if letter == 'h':
continue
print ('Ký tự hiện tại:', letter)
print ("Tạm biệt!")
Khi đoạn mã trên được thực thi, kết quả hiển thị như sau:
Ký tự hiện tại: P
Ký tự hiện tại: y
Ký tự hiện tại: t
Ký tự hiện tại: o
Ký tự hiện tại: n
Tạm biệt!
Giải thích code:
for letter in 'Python':
: Vòng lặpfor
này sẽ duyệt qua từng ký tự trong chuỗi'Python
‘. Mỗi ký tự sẽ được gán cho biếnletter
.if letter == 'h':
: Câu lệnhif
kiểm tra xem ký tự hiện tại (letter
) có phải là'h'
hay không.continue
: Nếu điều kiệnletter == 'h'
là đúng, lệnhcontinue
sẽ được thực thi. Điều này làm cho vòng lặp bỏ qua các lệnh còn lại trong lần lặp này (cụ thể là lệnhprint
), và chuyển sang lần lặp tiếp theo (với ký tự tiếp theo trong chuỗi).print ('Ký tự hiện tại:', letter)
: Câu lệnh này in ra ký tự hiện tại nếu điều kiệnletter == 'h'
không đúng (tức ký tự đó không phải là'h'
).print ("Tạm biệt!")
: Câu lệnh này được thực thi sau khi vòng lặpfor
kết thúc, báo hiệu rằng chương trình đã hoàn thành.
Lệnh continue trong Python với vòng lặp while
Trong Python, lệnh continue
được sử dụng với cả vòng lặp for
và vòng lặp while
. Mục đích của lệnh continu
e là bỏ qua việc thực thi các lệnh còn lại trong lần lặp hiện tại, và chuyển luồng điều khiển của chương trình sang lần lặp tiếp theo.
Ví dụ – Tìm thừa số nguyên tố
Đoạn mã dưới đây sử dụng lệnh continue
để tìm các thừa số nguyên tố của một số cho trước. Để tìm các thừa số nguyên tố, chúng ta sẽ thực hiện phép chia liên tiếp số đó cho các số bắt đầu từ 2, tăng dần số chia, và tiếp tục quá trình này cho đến khi số đầu vào giảm xuống bằng 1.
num = 60
print ("Thừa số nguyên tố của: ", num)
d = 2
while num > 1:
if num % d == 0:
print(d)
num = num / d
continue
d = d + 1
Khi chạy đoạn mã này, kết quả hiển thị trên màn hình sẽ là:
Thừa số nguyên tố của: 60
2
2
3
5
Hãy thử gán một giá trị khác (ví dụ 75) cho biến num
trong đoạn mã trên và kiểm tra kết quả các thừa số nguyên tố của số đó.
Thừa số nguyên tố của: 75
3
5
5
Giải thích code:
num = 60
: Khởi tạo biếnnum
với giá trị 60 (số cần phân tích thành thừa số nguyên tố).print ("Thừa số nguyên tố của: ", num)
: In ra màn hình thông báo về số đang được phân tích.d = 2
: Khởi tạo biếnd
(ước số) với giá trị 2, đây là ước số nguyên tố nhỏ nhất.while num > 1:
: Vòng lặpwhile
tiếp tục chạy chừng nàonum
còn lớn hơn 1.if num % d == 0:
: Kiểm tra xemnum
có chia hết chod
hay không.print (d)
: Nếunum
chia hết chod
thìd
là một thừa số nguyên tố củanum
, ind
ra màn hình.num = num / d
: Cập nhậtnum
bằng cách chia num chod
, để tiếp tục phân tích phần còn lại.continue
: Lệnhcontinue
được gọi ở đây sẽ bỏ qua các lệnh còn lại trong vòng lặp hiện tại và chuyển sang vòng lặp tiếp theo củawhile
, bằng việc kiểm tra điều kiệnnum >
1.d = d + 1
: Nếunum
không chia hết chod
, thìd
sẽ tăng lên 1 để kiểm tra ước số tiếp theo.
Lời kết
Vậy là chúng ta đã cùng nhau tìm hiểu chi tiết về lệnh continue trong Python, cũng như cách lệnh hoạt động và các ví dụ cụ thể để bạn thực hành. Hy vọng qua bài viết này, bạn sẽ nắm vững hơn về lệnh điều khiển này và có thể áp dụng linh hoạt vào các dự án lập trình của mình