循環是程式設計中一個重要的部分。

在 Python 中,我們有兩種類型的循環:while 循環for 循環

while 循環

使用 while 關鍵字定義 while 循環,直到條件求值為 False,它會重複執行其區塊:

condition = True
while condition == True:
    print("條件為 True")

這是一個無窮循環,它永遠不會結束。

讓我們在第一次迭代後停止循環:

condition = True
while condition == True:
    print("條件為 True")
    condition = False

print("循環結束後")

在這個案例中,第一次迭代運行,因為條件測試求值為 True,第二次迭代時條件測試求值為 False,所以控制權轉移到循環後的下一條指令。

通常會有一個計數器,在某些循環之後停止迭代一定次數:

count = 0
while count < 10:
    print("條件為 True")
    count = count + 1

print("循環結束後")

for 循環

使用 for 循環,我們可以告訴 Python 在預先決定的次數內執行一個區塊,而無需使用獨立的變數和條件來檢查其值。

例如,我們可以迭代列表中的項目:

items = [1, 2, 3, 4]
for item in items:
    print(item)

或者,您可以使用 range() 函數迭代指定的次數:

for item in range(4):
    print(item)

range(4) 會創建一個從 0 開始並包含 4 個項目的序列:[0, 1, 2, 3]

要獲得索引,您應該將序列包裝到 enumerate() 函數中:

items = [1, 2, 3, 4]
for index, item in enumerate(items):
    print(index, item)

中斷和繼續

無論是 while 循環還是 for 循環,都可以在區塊內部使用兩個特殊的關鍵字 breakcontinue 來中斷循環。

continue 停止當前的迭代,並告訴 Python 執行下一個迭代。

break 則完全停止循環,並繼續執行循環結束後的下一條指令。

第一個例子在這裡打印 1, 3, 4。第二個例子只打印 1

items = [1, 2, 3, 4]
for item in items:
    if item == 2:
        continue
    print(item)
items = [1, 2, 3, 4]
for item in items:
    if item == 2:
        break
    print(item)