Python中else的三種使用場景
判斷語句
這是最常見的用法,當if語句中的條件不滿足時,將執行else語句中的代碼。
a = False if a: print("a為真") else: print("a為假")
循環語句
如果else子句緊接在循環語句的後面,那麼在以下兩種情況將會執行else子句的代碼:
當循環體沒有執行break的時候,即循環體正常結束
print("兩次輸入機會") for i in range(2): num = int(input("請輸入一個數字:")) if 10 == num: print("10 == num,觸發break,不會執行else子句") break else: print("循環體沒有執行break語句,執行else子句") print("程序結束")
執行代碼:
當觸發break時,不會執行else子句:
兩次輸入機會 請輸入一個數字:1 請輸入一個數字:10 10 == num,觸發break,不會執行else子句 程序結束
當沒有觸發break時,執行else子句:
兩次輸入機會 請輸入一個數字:2 請輸入一個數字:3 循環體沒有執行break語句,執行else子句 程序結束
當while循環體完全不執行時也會執行緊跟在後面的else子句
while False: pass else: print("循環體不執行,我也會執行") # 執行後的輸出結果: # 循環體不執行,我也會執行
異常處理
當沒有發生異常的時候會執行緊跟在異常處理代碼後面的else子句
num1 = int(input("輸入一個整數:")) num2 = int(input("輸入另外一個整數:")) print('-'*20) try: print("{}/{}=".format(num1,num2),num1//num2) except ZeroDivisionError: print("輸入非法,ZeroDivisionError") else: print("輸入合法") print("程序結束")
代碼執行: 當沒發生異常時:
輸入一個整數:2 輸入另外一個整數:1 ---------------------------------------- 2/1= 2 輸入合法 程序結束
發生異常時:
輸入一個整數:2 輸入另外一個整數:0 ---------------------------------------- 輸入非法,ZeroDivisionError 程序結束
總結
else子句的觸發條件:
- 在判斷語句中,當if語句條件不滿足時會就執行else子句的代碼
- 在循環語句中,當循環體沒有執行或者循環體裡執行瞭break語句
- 在異常處理中,當沒有發生異常時會執行else子句
以上就是Python中else的三種用法的詳細內容,更多關於Python else用法的資料請關註WalkonNet其它相關文章!
推薦閱讀:
- python入門學習筆記分享
- Python中的變量、運算符與流程控制
- Python的數據類型與標識符和判斷語句詳解
- python入門學習關於for else的特殊特性講解
- Python 條件,循環語句詳解