您現在的位置是:首頁 > 網頁遊戲首頁網頁遊戲

第八章:Python入門之“控制語句(for迴圈語句)”

簡介2、元組推導式跟列表推導式類似,元組推導式就是利用for-in迴圈,快速生成一個元組,不過其生成的不是元組,而是一個物件,若想成為元組,可以利用tuple進行轉換,其格式如下:元組變數= tuple(表示式 for 變數 in 可迭代物件

怎麼終止for後面的所有迴圈

8。2、for-in迴圈語句

8。2。1、for-in迴圈語句格式

第八章:Python入門之“控制語句(for迴圈語句)”

另外:

for-in迴圈語句也可與else搭配使用,即當for-in執行完畢後,執行else裡面的執行語句,格式如下:

第八章:Python入門之“控制語句(for迴圈語句)”

8。2。2、for-in迴圈語句舉例

1、for-in迴圈遍歷輸出

第八章:Python入門之“控制語句(for迴圈語句)”

備註:

for i in dt:迴圈的是字典的鍵,也可用for i in keys(),若想迴圈字典的值,可用for i in dt。values(),若想迴圈字典的鍵值對,可用for i in dt。items(),詳情可參見第六章的字典內建函式操作。

2、for-in與else配合使用

第八章:Python入門之“控制語句(for迴圈語句)”

8。2。3、for-in迴圈語句內建函式

for迴圈的內建迭代函式有以下4個:

v

enumerate(obj):編碼迭代

v

sorted(obj):排序迭代

v

reversed(obj):反轉迭代

v

zip(obj1,obj2,。。。):並行迭代

1、enumerate(obj[,start])函式

此函式在迭代的時候返回序列中的編號(預設從

0 開始,可設定start改變其開始值),又返回序列中的元素,因為返回兩個值,所以for的迴圈變數就需要 2 個,分別接受元素的編號和元素的值。如:

第八章:Python入門之“控制語句(for迴圈語句)”

2、

sorted(obj[,reverse=True])

函式

此函式在

for迴圈遍歷輸出時按元素的值從小到大輸出,可設定引數reverse=True,讓其從大到小輸出,如:

第八章:Python入門之“控制語句(for迴圈語句)”

說明:此方法其實就是先將列表li按元素的值從小到大重新排序再輸出,跟列表內建函式sort()類似,只是此語句執行完後不會對原列表進行進行更改,而sort()是對原列表進行更改。

3、

reversed(obj)

函式

此函式在

for迴圈遍歷輸出時從尾到頭進行輸出,如:

第八章:Python入門之“控制語句(for迴圈語句)”

4、

zip(obj1,obj2,。。。)

函式

此函式可以同時迴圈遍歷多個物件,如果物件的元素長度(即元素個數)不一樣時,以元素長度最短的為準,即遍歷完長度最短的物件後停止遍歷,如:

第八章:Python入門之“控制語句(for迴圈語句)”

8。2。4、for-in與range()函式

for-in迴圈常與range()函式搭配使用,range()是一個區間函式,即其返回的是一個區間,range()函式格式如下:

range(start,end,step):

1、

start:開始的值,預設從 0 開始(0可以不寫),如range(10)等價於range(0,10),但有step的情況下,0不可以省略,如range(0,10,2)不能寫成range(10,2)。

2、

end:結束的值,但不包括end值,即其區間是左閉右開,如range(0,10),其輸出是:0,1,2,3,4,5,6,7,8,9,不包括10。

3、

step:步長,預設為1(可以不寫),如range(0,10)等價於range(0,10,1)。

注意:

range()括號裡的數值只能是整數,不能是浮點數(即小數)。

第八章:Python入門之“控制語句(for迴圈語句)”

8。2。5、for-in與break、continue用法

for-in迴圈中,如果想跳出迴圈,可搭配break和continue使用,其作用如下:

v

break:結束迴圈本身,即停止執行迴圈的所有程式碼(不再執行迴圈程式碼,表示退出迴圈)。

v

continue:結束本次迴圈,即停止執行本次迴圈,進入下一個迴圈繼續執行(依然執行迴圈程式碼,只是跳過本次迴圈,進入下一次迴圈,直到迴圈結束)。

1、break舉例

第八章:Python入門之“控制語句(for迴圈語句)”

2、continue舉例

第八章:Python入門之“控制語句(for迴圈語句)”

8。2。6、for-in與推導式

for-in還有一個很強大的用法,那就是列表推導式,他可以利用range()、列表、元組、字典和集合等資料型別,快速生成一個我們需要的列表、元組、字典或集合等,下面介紹3中型別的推導式:

8。2。6。1、列表推導式

顧名思義,就是利用

for-in迴圈,快速生成一個列表,其格式如下:

列表變數

= [表示式 for 變數 in 可迭代物件 [if 條件判斷]]

其中:

[if 條件判斷] 不是必須的,可定義,也可省略。

表示式格式說明:

1。列表推導式先執行for-in迴圈,然後再執行表示式。

2。若存在[if 條件判斷],先執行for-in迴圈,然後執行[if 條件判斷],最後執行表示式。

3。若存在多個for-in迴圈,則返回的結果是多個for迴圈的笛卡爾積。

4。列表推導式可以巢狀,和巢狀for-in迴圈的原理相同。

列表推導式舉例:

1、單個for-in迴圈

第八章:Python入門之“控制語句(for迴圈語句)”

2、多個for-in迴圈

第八章:Python入門之“控制語句(for迴圈語句)”

8。2。6。2、元組推導式

跟列表推導式類似,元組推導式就是利用

for-in迴圈,快速生成一個元組,不過其生成的不是元組,而是一個物件,若想成為元組,可以利用tuple進行轉換,其格式如下:

元組變數

= tuple(表示式 for 變數 in 可迭代物件 [if 條件判斷])

其中:

[if 條件判斷] 不是必須的,可定義,也可省略,元組推導式是中括號()。

元組推導式舉例:

第八章:Python入門之“控制語句(for迴圈語句)”

備註:以上舉例是單個

for-in迴圈,也有多個for-in迴圈巢狀,跟列表一樣,在此不再贅述,感興趣的朋友可以自己練習。

8。2。6。3、字典推導式

字典推導式就是利用

for-in迴圈快速生成一個字典,其格式如下:

第八章:Python入門之“控制語句(for迴圈語句)”

字典推導式舉例:

第八章:Python入門之“控制語句(for迴圈語句)”

備註:字典推導式也可以加[if 條件判斷],可以自己試試。

8。2。6。4、集合推導式

集合推導式就是利用

for-in迴圈快速生成一個集合,其格式如下:

第八章:Python入門之“控制語句(for迴圈語句)”

集合推導式舉例:

第八章:Python入門之“控制語句(for迴圈語句)”

備註:以上舉例是單個

for-in迴圈,也有多個for-in迴圈巢狀,跟列表一樣,在此不再贅述,感興趣的朋友可以自己練習。

Top