Python 中的迴圈與 else

2021-07-16 22:10:48 字數 1113 閱讀 1335

python 中的迴圈與 else 有以下兩種形式

python中的 for、while 迴圈都有乙個可選(optional)的 else 分支(類似 if語句和 try 語句那樣),在迴圈迭代正常完成之後執行。

所謂迴圈迭代正常完成,一般是指(所需要迭代處理的物件遍歷完畢,且中間沒有異常發生):

注:縱然有 continue 語句,迴圈也是正常完成的;

in [1]: for i in range(5):

...: if i & 1 == 0:

...: continue

...: print(i)

...: else:

...: print('iteratived over everything')

...:13

iteratived over everything

>>> for i in :

... print(i)

...else:

... print('still iterated over everything (i.e. nothing)')

...still iterated over everything (i.e. nothing)

如此設計的意義何在呢?

else 語句在迴圈中的乙個常見使用案例是實現迴圈查詢。假說你在查詢乙個滿足特定條件的專案(item),同時需要進行附加處理,或者在未發現可接受的值時生成乙個錯誤:

for x in data:

if meets_cond(x):

break

...else:

....

沒有 else 語句的話,你需要設定乙個標誌,然後在後面對其檢測,以此確定是否存在滿足條件的值。

found = false

for x in data:

if meets_cond(x):

found = true

if not found:

...

python中迴圈語句中的else用法

Python迴圈中的else

python迴圈中的else如果此迴圈迴圈完畢,那麼執行else後的語句,如果被break了,則不執行while中的else 正常情況 i 0while i 5 print i i 1else print else clause out put 01 234else clause 因為while迴圈...

python迴圈內if迴圈外else

迴圈內if迴圈外else 必須搭配 break 使用 其含義為 若在迴圈內所有值都不符合if條件,則只執行else語句。若在迴圈內有值都符合if條件,則只執行if語句。若不使用break則else語句永遠會執行。滿足條件for i in range 5 if i 3 print 我是3 else p...

python 中else在while迴圈中的用法

else 可以在while和for迴圈中運用,else和while或for搭配使用,不再是條件判斷的含義。而是當while條件不成立時,直接跳出while迴圈,執行else輸出如 count 0 while count 12 if true print yes break count 1 else ...