【Python】Python - Python for迴圈。Python for Loops.
【Python】Python - Python for迴圈。Python for Loops.
Python For 迴圈
for 迴圈通常使用在迭代如list, tuple, dictionary, set或string中。
這種寫法比較像物件導向程式語言的迭代方法,而比較不像其他程式語言的for keyword。
有了for 迴圈,我們可以對每個list, tuple, set...等裡面的每個item執行程式碼。
範例
列印水果list中的每個水果:
fruits = ["apple", "banana", "cherry"]
for x in fruits:
print(x)上面輸出: applebananacherryThe for 迴圈不要求一定需要指標變數。
對一個String使用迴圈
因為String中包含多個characters,所以為一個iterable的物件。
範例
對文字"banana"使用迴圈去列印裡面的每個字元:
for x in "banana":
print(x)上面輸出:bananabreak 描述式
使用break 描述式我們可以停止執行迴圈,這樣就不用將所有的items走過一遍。
範例
在x為"banana"時,離開迴圈:
fruits = ["apple", "banana", "cherry"]
for x in fruits:
print(x)
if x == "banana":
break上面輸出:applebanana範例
在x為"banana"時,離開迴圈,但先執行break再列印:
fruits = ["apple", "banana", "cherry"]
for x in fruits:
if x == "banana":
break
print(x)上面輸出:applecontinue 描述式
使用continue 描述式,我們可以停止執行目前的迭代,並從下一迭代開始的程式碼開始執行:
範例
不要列印"banana":
fruits = ["apple", "banana", "cherry"]
for x in fruits:
if x == "banana":
continue
print(x)上面輸出:applecherryrange() 函數
範例
使用range()函數:
for x in range(6):
print(x)上面輸出:012345注意 range(6) 並不是0到6,而是0到5。
range() 函數預設值為從0開始,然而可以自定義起始值與結束值。如,range(2, 6)表示為從2到6(不包含6)範圍的數值。
範例
在range()中使用開始與結束,共2個參數:
for x in range(2, 6):
print(x)上面輸出:2345range() 函數預設為增加1,然而可以設定每次增加的數值,如使用第3個參數來指定,range(2, 30, 3):
範例
每次增加3個,range()如果不指定第3個參數,則預設為每次增加1:
for x in range(2, 30, 3):
print(x)上面輸出:25811141720232629For 迴圈中的Else
在for迴圈中的else keyword為當迴圈結束後需要執行的程式碼區塊。
範例
列印從0到5的所有數字,並在迴圈結束後列印一個訊息:
for x in range(6):
print(x)
else:
print("Finally finished!")上面輸出:012345Finally finished!注意: 如果迴圈被break 描述式停止時,這個時候的 else 區塊並不會執行。
範例
迴圈執行到x=3時使用break離開迴圈,測試else區塊是否會執行:
for x in range(6):
if x == 3: break
print(x)
else:
print("Finally finished!")上面輸出:012巢狀Loops
一個巢狀迴圈為迴圈中還有另一個迴圈。
在裡面的那個迴圈將會在每次外部迭代迴圈執行時都會執行一次:
範例
列印每個水果的每種形容詞:
adj = ["red", "big", "tasty"]
fruits = ["apple", "banana", "cherry"]
for x in adj:
for y in fruits:
print(x, y)上面輸出:red applered bananared cherrybig applebig bananabig cherrytasty appletasty bananatasty cherrypass 描述式
for 迴圈的內容不可以為空白的,但如果因為某種理由而必須要有個空的for迴圈,則迴圈裡面需要放pass描述式來避免直譯器產生的錯誤。
範例
for x in [0, 1, 2]:
pass
留言
張貼留言