有別於上一篇for迴圈[Python基礎]流程控制for迴圈,while迴圈則常常被說是無限迴圈,若未到達跳脫的條件,是不會停止的。
在日常生活中,我們也常常用到這個概念,例如泡奶粉,要一直攪拌到粉都溶解了為止,其中的一直跟為止就等於while迴圈概念一樣,一直做到某個條件滿足了被觸發才停止。
while 條件:
# 在這裡執行相應的程式碼
當執行完相對應的程式碼時,又會再回到while 條件這,在檢查一次條件式是否為True,是的話又再繼續執行程式塊。
我們用一個簡單的例子來說明while loop如何去使用:
如圖中藍色箭頭一樣,當執行完count += 1
,讓count
累加1後在回到while判斷式這,第一圈完成時,count
會為1,條件式小於5為True,在把count
印出,在累加1,這樣的循環直到第五圈count
累加到5了,條件式不小於5為False就跳出迴圈了。
count = 0
while count < 5:
print(f"Count: {count}")
count += 1
while
迴圈的注意事項:
這時候就會想到生活的案例一樣,安全插座在無負載的情況下是一直供電的,但有個安全保護就是過載時就會跳掉,不在供電。
在程式語言中也有一樣的做法,我們可以設一個條件,滿足時就跳出迴圈,這時候就會想到用IF條件式來完成,那要怎麼跳出迴圈呢,這時候就要用break
這個關鍵字了。
利用上面的範例,在加在IF條件式吧。
設定一個條件,次數到達三次時就跳出吧,如下圖,就沒印出4了
當if條件式滿足時,就break跳出迴圈,數字就只會印到3。
count = 0
while count < 5:
print(f"Count: {count}")
if count == 3:
break
count += 1
break
用於立即終止迴圈的執行,跳出整個迴圈
這時候又會想,有停止應該也會有繼續吧?,在控制流程中也有個關鍵字是含有繼續的用法就是continue
continue
用於跳過當前迴圈中的剩餘程式碼,直接進入下一次迴圈的迭代
華人地區有個數字4有些人會特別忌諱,我們就特意設計跳過它,不要讓它印出。
假設要印0~9,想跳過4,在其中加一個if條件式,數字等於4時我們就跳過,if條件式內加個count += 1
是避免進入無限迴圈,若不加,就會一直無限在if條件式來回跑。
count = 0
while count < 10:
if count == 4:
count += 1 #避免進入無限迴圈
continue
print(f"Count: {count}")
count += 1
讓我們總結一下剛剛學到的內容:
True
,迴圈就會持續執行。break
用於立即終止迴圈的執行,跳出整個迴圈。break
來提前結束迴圈。continue
用於跳過當前迴圈中剩餘的程式碼,直接進入下一次迴圈的迭代。continue
跳過特定的迭代步驟