一、For循環的基本語法
for i in range(start, end, step):
# 循環體
對於Python的For循環,其基本的語法非常簡單。使用關鍵字for
,接下來加上一個循環變數i
,然後使用in
關鍵字與一個集合相連,這個集合可以是列表、元組、字元串等容器類型。最後用英文冒號:
結束這一行,下一行則是循環體語句,在這裡要注意,Python強制使用縮進進行代碼塊劃分。當程序在執行到for
這一行時,它會將集合中的每一個元素依次賦值給循環變數i
,並執行循環體代碼,當集合中的元素全部遍歷一遍後,整個循環結束。
其中range(start, end, step)
是Python中常用的內置函數。第一個參數是起始值,第二個參數是終止值,不包含終止值,第三個參數是步長。例如,range(0,10,2)
可以生成一個從0到10(不包含10)的序列,步長為2,即序列為0,2,4,6,8。
二、在循環中使用break和continue
在For循環中,也可以使用break
和continue
關鍵字來改變程序的執行流程。
break
的作用是立即結束整個循環,直接跳出循環體。
for i in range(5):
if i == 3:
break
print(i)
上面的代碼使用For循環遍歷序列range(5)
,一旦i
的值等於3,就立即結束循環。在控制台中,會輸出0,1,2。
continue
的作用是跳過本次循環,直接執行下一次循環。
for i in range(5):
if i == 3:
continue
print(i)
上面的代碼使用For循環遍歷序列range(5)
,一旦i
的值等於3,就跳過這一次循環。在控制台中,會輸出0,1,2,4。
三、在For循環中使用else
Python中唯一的一種配合For循環的else
語句,是在循環完整個序列後(或者遍歷一個空序列後)執行,如果循環中使用了break
關鍵字,else
語句將不會執行。以下代碼演示了For循環是如何配合else
語句使用的:
for i in range(5):
if i == 3:
break
else:
print('循環結束')
上面的代碼當i
的值等於3時,For循環執行break
語句跳出循環,因此else
語句不會執行。如果break
關鍵字被注釋掉,就會在控制台中輸出「循環結束」。
四、在For循環中使用zip函數並行遍歷多個列表
有時候需要同時遍歷多個列表,比如下面這個例子:
list1 = ['a', 'b', 'c']
list2 = [1, 2, 3]
list3 = ['A', 'B', 'C']
for i in range(len(list1)):
print(list1[i], list2[i], list3[i])
上面代碼用i
作為循環變數遍歷了list1,然後使用索引i
訪問其他兩個列表中的元素。輸出結果為:
a 1 A
b 2 B
c 3 C
這種方式不太優雅,也容易出錯,如果列表元素個數不同不好處理。為此,Python提供了一個zip
函數,可以將多個列表中的元素並行遍歷出來,如下所示:
list1 = ['a', 'b', 'c']
list2 = [1, 2, 3]
list3 = ['A', 'B', 'C']
for a, b, c in zip(list1, list2, list3):
print(a, b, c)
上面的代碼使用zip
函數並行遍歷了三個列表中的元素,並將它們組裝成了一個元組。輸出結果與上面的方法相同,但是代碼更加簡潔可讀。
五、使用enumerate函數來獲取序列元素的索引
在遍歷一個序列時,有時候需要訪問序列元素本身以及其索引。在這種情況下,使用Python提供的enumerate
函數可以輕鬆地實現這一目標,如下所示:
myList = ['apple', 'banana', 'cherry']
for index, value in enumerate(myList):
print(index, value)
上面的代碼中,使用enumerate
函數獲取了列表myList
的元素及其索引。在循環體中可以使用index
和value
兩個變數表示元素索引和元素本身。輸出結果如下所示:
0 apple
1 banana
2 cherry
六、循環嵌套
循環嵌套指的是在一個For循環中再嵌套另一個For循環,以此類推。循環嵌套在很多場合下都是比較常見的編程模式。如下面的代碼演示了兩個For循環嵌套的情況:
for i in range(1, 6):
for j in range(1, i+1):
print("*", end="")
print("")
上面的代碼中,第一個For循環控制行數,第二個For循環控制行中的每一個星號(*)的個數,並以每一行結束時的換行符作為分隔。在控制台中輸出如下效果:
*
**
***
****
*****
七、總結
For循環是Python編程中經常使用的一種結構,具有簡單明了的語法和性能優異的特點。在開發實踐中,也有很多常用的技巧和操作,比如break
和continue
關鍵字、else
語句、zip
函數和enumerate
函數等。熟練掌握For循環的語法和用法,可以幫助我們更加高效地編寫Python程序。
原創文章,作者:SYQV,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/146146.html