1.break關鍵字
break關鍵字,其作用是在回圈中的代碼塊遇到此關鍵字,立刻跳出整個回圈,執行回圈外的下一條陳述句,
其在while和for回圈中的作用示意圖如下:

1.1break在while回圈中的使用
1.1.1不加else陳述句
比如我們通過鍵盤輸入單詞,輸出剛才的單詞,撰寫程式如下所示:

我們發現當我們輸入除了quit和break這兩個單詞之外,輸出結果上都會在輸入單詞之后,輸出一條'您輸入的單詞是:xxxxx'這樣的陳述句,當我們輸入break之后,輸出的是'回圈將通過break關鍵字退出'和'程式已退出',我們知道'程式已退出'是while回圈外print輸出的陳述句,這里沒有輸出'您輸入的單詞是:xxxxx',但是程式結構上break是在print('您輸入的單詞是:'+string)之前的,這只能說明程式執行break之后,后面的代碼不會被執行,直接跳出回圈,執行回圈外的代碼,
1.1.2加入else陳述句
我們知道如果while的條件測驗為False,在有else陳述句的條件下,將會先去執行else陳述句,再去執行回圈外陳述句,撰寫程式如下所示:

當輸入quit之后,因為string == 'break'這個條件測驗為False,所以執行if陳述句外的print('您輸入的單詞是:'+string)這條陳述句,所以輸出結果上顯示:'您輸入的單詞是:quit',當這條陳述句執行完之后,再去進行while回圈的條件測驗,此時string是quit,顯然條件測驗string != 'quit'為False,所以跳出while回圈,因為有else存在,所以執行else陳述句中的print('程式通過輸入quit方式退出'),所以在輸出結果上會顯示'程式通過輸入quit方式退出',執行完else陳述句之后,再去執行while回圈外的陳述句print('程式已退出'),所以輸出結果上會顯示'程式已退出',
那么,當我們輸入break,會是什么結果?測驗結果如下:

我們發現輸出結果后半段和沒有else陳述句的程式相同,因此break關鍵字不但跳出了while回圈,而且還跳過else陳述句執行的代碼,直接執行回圈外代碼,
1.2break在for回圈中的使用
1.2.1不加else陳述句
比如我們有一個簽到的名單,要查詢特定的學員'劉柏宏'來沒來上課,只要查詢到該學員來上課了就不再繼續往下查,撰寫程式如下所示

1.2.2加入else陳述句
那么如果簽到名單中,一直沒有查到學員'劉柏宏'來上課,該如何實作?我們可以結合else來實作撰寫程式如下所示:

因為簽到名單中沒有'劉柏宏'所以for回圈結束后,執行else陳述句,輸出'查詢名單結束,簽到名單中沒有劉柏宏',再執行回圈外的print('查詢結束'),輸出'查詢結束'
同樣的程式邏輯,我們把簽到名單中含有'劉柏宏'的測驗下,看是否影響含有的情況,撰寫程式如下所示:

發現可以正常查詢到'劉柏宏'在簽到名單中,
當'劉柏宏'在簽到名單中時,sign_name== '劉柏宏'在查詢到sign_name為'劉柏宏'時條件測驗為True,執行if陳述句下的代碼塊,print('劉柏宏已經來上課了'),輸出結果上顯示'劉柏宏已經來上課了',接下來執行break關鍵字,輸出結果上只顯示'查詢結束',說明break不但跳出了for回圈,而且還跳過了else陳述句,直接執行回圈外的代碼,
總而言之,不管是while回圈還是for回圈,當break關鍵字執行后,都會直接跳出回圈,即使在else陳述句存在的條件下,也會跳過else陳述句,直接執行回圈外的代碼,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/554659.html
標籤:Python
下一篇:返回列表
