書名: Python基礎(chǔ)及應(yīng)用作者名: 呂云翔 姚澤良 張揚等編著本章字數(shù): 488字更新時間: 2021-10-27 15:16:29
3.3 Break, Continue, Pass
學(xué)習(xí)了三種基本結(jié)構(gòu),我們已經(jīng)可以寫出一些有趣的程序了,但是Python還有一些控制語句可以讓代碼更加優(yōu)美簡潔。
3.3.1 Break, Continue
Break和Continue只能用在循環(huán)體中,通過一個例子來認識一下作用:

這段代碼會輸出:

這段循環(huán)中如果沒有continue和break的話應(yīng)該是輸出1到51的,但是這里輸出只有1和3,為什么呢?
首先考慮當(dāng)i為2的那次循環(huán),它進入了if i==2的代碼塊中,執(zhí)行了continue,這次循環(huán)就被直接跳過了,也就是說后面的代碼包括print(i)都不會再被執(zhí)行,而是直接進入下一次i=3的循環(huán)。
接著考慮當(dāng)i為4的那次循環(huán),它進入了elif i==4的代碼塊中,執(zhí)行了break,直接跳出了循環(huán)到最外層,然后接著執(zhí)行循環(huán)后面的代碼輸出了done。
總結(jié)一下,continue的作用是跳過剩下的代碼進入下一次循環(huán),break的作用是跳出當(dāng)前循環(huán)然后執(zhí)行循環(huán)后面的代碼。
這里有一點需要強調(diào)的是,break和continue只能對當(dāng)前循環(huán)起作用,也就是說如果在循環(huán)嵌套的情況下想對外層循環(huán)起控制作用,需要多個break或者continue聯(lián)合使用。
3.3.2 Pass
pass很有意思,它的功能就是沒有功能。看一個例子:


要想在a>10的時候什么都不執(zhí)行,但是如果什么都不寫的話又不符合Python的縮進要求,為了使得語法上正確,這里使用了pass來作為一個代碼塊,但是pass本身不會有任何效果。
- TensorFlow Lite移動端深度學(xué)習(xí)
- Oracle從新手到高手
- Selenium Design Patterns and Best Practices
- Network Automation Cookbook
- QTP自動化測試進階
- Flux Architecture
- HTML 5與CSS 3權(quán)威指南(第3版·上冊)
- Scala for Machine Learning(Second Edition)
- 編寫高質(zhì)量代碼:改善Objective-C程序的61個建議
- 測試架構(gòu)師修煉之道:從測試工程師到測試架構(gòu)師
- C++程序設(shè)計教程
- MongoDB Cookbook(Second Edition)
- Learning QGIS(Second Edition)
- C#網(wǎng)絡(luò)程序開發(fā)(第二版)
- Visual C++實用教程