Python中else的三種使用場(chǎng)景
判斷語句
這是最常見的用法,當(dāng)if語句中的條件不滿足時(shí),將執(zhí)行else語句中的代碼。
a = False if a: print("a為真") else: print("a為假")
循環(huán)語句
如果else子句緊接在循環(huán)語句的后面,那么在以下兩種情況將會(huì)執(zhí)行else子句的代碼:
當(dāng)循環(huán)體沒有執(zhí)行break的時(shí)候,即循環(huán)體正常結(jié)束
print("兩次輸入機(jī)會(huì)") for i in range(2): num = int(input("請(qǐng)輸入一個(gè)數(shù)字:")) if 10 == num: print("10 == num,觸發(fā)break,不會(huì)執(zhí)行else子句") break else: print("循環(huán)體沒有執(zhí)行break語句,執(zhí)行else子句") print("程序結(jié)束")
執(zhí)行代碼:
當(dāng)觸發(fā)break時(shí),不會(huì)執(zhí)行else子句:
兩次輸入機(jī)會(huì) 請(qǐng)輸入一個(gè)數(shù)字:1 請(qǐng)輸入一個(gè)數(shù)字:10 10 == num,觸發(fā)break,不會(huì)執(zhí)行else子句 程序結(jié)束
當(dāng)沒有觸發(fā)break時(shí),執(zhí)行else子句:
兩次輸入機(jī)會(huì) 請(qǐng)輸入一個(gè)數(shù)字:2 請(qǐng)輸入一個(gè)數(shù)字:3 循環(huán)體沒有執(zhí)行break語句,執(zhí)行else子句 程序結(jié)束
當(dāng)while循環(huán)體完全不執(zhí)行時(shí)也會(huì)執(zhí)行緊跟在后面的else子句
while False: pass else: print("循環(huán)體不執(zhí)行,我也會(huì)執(zhí)行") # 執(zhí)行后的輸出結(jié)果: # 循環(huán)體不執(zhí)行,我也會(huì)執(zhí)行
異常處理
當(dāng)沒有發(fā)生異常的時(shí)候會(huì)執(zhí)行緊跟在異常處理代碼后面的else子句
num1 = int(input("輸入一個(gè)整數(shù):")) num2 = int(input("輸入另外一個(gè)整數(shù):")) print('-'*20) try: print("{}/{}=".format(num1,num2),num1//num2) except ZeroDivisionError: print("輸入非法,ZeroDivisionError") else: print("輸入合法") print("程序結(jié)束")
代碼執(zhí)行: 當(dāng)沒發(fā)生異常時(shí):
輸入一個(gè)整數(shù):2 輸入另外一個(gè)整數(shù):1 ---------------------------------------- 2/1= 2 輸入合法 程序結(jié)束
發(fā)生異常時(shí):
輸入一個(gè)整數(shù):2 輸入另外一個(gè)整數(shù):0 ---------------------------------------- 輸入非法,ZeroDivisionError 程序結(jié)束
總結(jié)
else子句的觸發(fā)條件:
- 在判斷語句中,當(dāng)if語句條件不滿足時(shí)會(huì)就執(zhí)行else子句的代碼
- 在循環(huán)語句中,當(dāng)循環(huán)體沒有執(zhí)行或者循環(huán)體里執(zhí)行了break語句
- 在異常處理中,當(dāng)沒有發(fā)生異常時(shí)會(huì)執(zhí)行else子句
以上就是Python中else的三種用法的詳細(xì)內(nèi)容,更多關(guān)于Python else用法的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- Python try except else使用詳解
- 淺談對(duì)python中if、elif、else的誤解
- python else語句在循環(huán)中的運(yùn)用詳解
- python中if及if-else如何使用
- python使用for...else跳出雙層嵌套循環(huán)的方法實(shí)例
- Python while循環(huán)使用else語句代碼實(shí)例
- 在python中利用try..except來代替if..else的用法
- Python循環(huán)中else,break和continue的用法實(shí)例詳解
- python for和else語句趣談
- Python列表解析配合if else的方法
- 詳解Python if-elif-else知識(shí)點(diǎn)
相關(guān)文章
python 定義函數(shù) 返回值只取其中一個(gè)的實(shí)現(xiàn)
這篇文章主要介紹了python 定義函數(shù) 返回值只取其中一個(gè)的實(shí)現(xiàn)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-05-0520行python代碼實(shí)現(xiàn)人臉識(shí)別
這篇文章主要介紹了python人臉識(shí)別,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05python GUI庫(kù)圖形界面開發(fā)之PyQt5布局控件QHBoxLayout詳細(xì)使用方法與實(shí)例
這篇文章主要介紹了python GUI庫(kù)圖形界面開發(fā)之PyQt5布局控件QHBoxLayout詳細(xì)使用方法與實(shí)例,需要的朋友可以參考下2020-03-03python發(fā)送json參數(shù)的實(shí)例代碼
在寫腳本的過程中,除了發(fā)送form表單參數(shù)之外,我們還會(huì)發(fā)送json格式的參數(shù)。那么碰見json格式要怎么發(fā)送呢,這篇我們來解決這個(gè)問題,需要的朋友可以參考下2019-10-10pytest解讀fixtures中yield與addfinalizer區(qū)別
這篇文章主要為大家介紹了pytest官方解讀fixtures中yield與addfinalizer區(qū)別,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06Django密碼系統(tǒng)實(shí)現(xiàn)過程詳解
這篇文章主要介紹了Django密碼系統(tǒng)實(shí)現(xiàn)過程詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07python sklearn包——混淆矩陣、分類報(bào)告等自動(dòng)生成方式
今天小編就為大家分享一篇python sklearn包——混淆矩陣、分類報(bào)告等自動(dòng)生成方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-02-02selenium+unittest實(shí)現(xiàn)web自動(dòng)化的示例代碼
本文主要介紹了selenium+unittest實(shí)現(xiàn)web自動(dòng)化的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03