1. 程式人生 > 其它 >爬蟲與Python:(二)Python基礎篇——11.迴圈語句

爬蟲與Python:(二)Python基礎篇——11.迴圈語句

Python中迴圈語句有for和while。Python迴圈語句控制結構如圖1-25所示。

for迴圈

在Python中for迴圈可以變數任何序列的專案,如一個列表或一個字串。for迴圈一般格式如下:

for <variable> in <sequence>:
    <statements>
else:
    <statements>

下面用for語句實現列印1~10的數字:

1 for x in range(1,10):
2     print(x)

執行後控制檯會輸出:

1
2
3
4
5
6
7
8
9

其中range表示範圍,1~10的數,x表示從1開始迭代,每迭代一次,x就會加1,直到x變成了10結束,因此x=10時不執行語句,for迴圈是9次迭代。

如果是列表或字典,就不用range()函式,直接用列表或字典,此時x表示列表或字典的元素,程式碼如下。

list = [1,2,3,4]
for x in list:
    print(x)

執行後控制檯會輸出:

1
2
3
4

while迴圈

在Python中while迴圈的一般格式如下:

while 判斷條件:
    語句

同樣地,需要注意冒號和縮排。另外,在Python中沒有do……while迴圈。以下示例使用了whlie來計算1~100的總和。

1 n = 100
2 sum = 0
3 counter = 1
4 while counter <= n:
5     sum = sum + counter
6 counter += 1 7 print("1到%d之和為:%d"%(n , sum))

執行之後控制檯會輸出:1到100之和為:5050

還可以通過設定條件表示式永遠不為False來實現無限迴圈,示例如下:

1 var= 1
2 while var == 1: # 表示式條件永遠為true
3     num = int(input("請輸入一個數字:"))
4     print("您輸入的數字是:" ,num)
5 print("Good bye!")

執行控制檯會輸出:

請輸入一個數字:1
您輸入的數字是: 1
請輸入一個數字:2
您輸入的數字是: 2
請輸入一個數字:

While迴圈使用else語句

while ……else在條件語句為False時執行else語句塊,示例如下:

1 count = 0
2 while count < 5:
3     print(count , "小於5")
4     count = count + 1
5 else:
6     print(count , "大於或等於5")

執行後控制檯會輸出:

0 小於5
1 小於5
2 小於5
3 小於5
4 小於5
5 大於或等於5
有志者,事竟成,破釜沉舟,百二秦關終屬楚; 苦心人,天不負,臥薪嚐膽,三千越甲可吞吳。