Python中else怎么用?else的用法總結
關于else的用法總結
本文討論Python的for…else、while…else、try..except…else等語法
Python中的for、while是在循環(huán)體內沒有break語句、沒有return語句,或者沒有異常出現時才執(zhí)行else語句,try..except…else是在try中無異常產生時執(zhí)行,注意不包括continue。
總的來說,是for、while、try語句中‘沒毛病’時才執(zhí)行,而在if..else語句中是if語句判斷為假(有毛?。┎艌?zhí)行else,這一點要區(qū)分開來
下面舉例說明下while..else作用,字符串有s1.find(s2)方法,作用是在字符串s1中查找s2,若找到就返回其索引值,不存在返回-1,但是列表卻沒find方法,以下用while…else語句實現list_find方法:

或者模擬list.index()的實現:

最后關于try….except1..except2…else…finally的執(zhí)行順序:是try執(zhí)行完沒有任何問題(即各個except語句均沒有捕獲到異常)時,再去執(zhí)行else語句,最后執(zhí)行finally首尾工作,若執(zhí)行過程中只要有except捕獲到異常,就跳過else直接執(zhí)行finally;

你不知道的else用法
if-else
無論在哪個語言,if-else基本上都是通用的分支選擇結構了。這里就簡單介紹一下。
if 3%2==1:
? ? print("if")
else:
? ? print("else")if-else 滿足if則進入if語塊,否則進入else語塊 if 和else 只有一個語塊代碼會被執(zhí)行。
for-else
for-else搭配使用,我也只是在python的學習過程中碰到過。通過測試用例來比較一下。
fruits=["apple","orange","pear"]
for item in fruits:
? ? if item=="apple":
? ? ? ? print("apple")
else:
? ? print("for-else")↓↓↓
apple for-else
這里for循環(huán)正常執(zhí)行結束,然后執(zhí)行了else語塊的代碼。
fruits=["apple","orange","pear"]
for item in fruits:
? ? if item=="apple":
? ? ? ? print("break")
? ? ? ? break
else:
? ? print("for-else")↓↓↓
break
當在for循環(huán)中執(zhí)行break語句跳出循環(huán)時,else語塊沒有執(zhí)行。
即for-else搭配使用時,for循環(huán)沒有因為break語句跳出循環(huán),則會執(zhí)行else語句。
while-else
while-else與for-else類似,均為前面的循環(huán)正常結束時else語塊會被執(zhí)行。
i=5
while i>0:
? ? i=i-1
else:
? ? print("while-else")↓↓↓
while-else
while語句正常執(zhí)行,當while條件為false時結束while循環(huán),進入else語塊。
i=5
while i>0:
? ? i=i-1
? ? if i==3:
? ? ? ? print("break")
? ? ? ? break
else:
? ? print("while-else")↓↓↓
break
while語句因為break語句跳出循環(huán),else語塊沒有被執(zhí)行。
while-else搭配使用時,while循環(huán)沒有因為break語句跳出循環(huán),則會執(zhí)行else語句
備注:上述例子的break不一定非得是break,只要能跳出當前循環(huán)的語句都會跳出else語塊。else如果還有其他用法,請在下方留言一起學習。
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
基于Pygame中Pygame模塊的大戰(zhàn)外星人實戰(zhàn)
本文主要介紹了基于Pygame中Pygame模塊的大戰(zhàn)外星人實戰(zhàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-12-12
Python的Tornado框架實現圖片上傳及圖片大小修改功能
Tornado是一個異步的Python Web開發(fā)框架,同時也是一個優(yōu)秀的異步服務器開發(fā)庫,這里我們將來講解一下Python的Tornado框架實現圖片上傳及圖片大小修改功能方面的一些重點:2016-06-06

