官术网_书友最值得收藏!

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本身不會有任何效果。

主站蜘蛛池模板: 镇原县| 潍坊市| 澄城县| 南木林县| 阜新市| 河北省| 新津县| 栖霞市| 隆子县| 富裕县| 耿马| 兖州市| 柳河县| 房产| 天全县| 新晃| 舟曲县| 顺昌县| 察哈| 孙吴县| 洛扎县| 东海县| 台湾省| 桓台县| 临洮县| 新蔡县| 承德县| 荔浦县| 舒城县| 门源| 老河口市| 绍兴市| 利辛县| 寿宁县| 武强县| 无棣县| 临沭县| 东乡县| 新乡县| 基隆市| 南召县|