Python 中的 for...else 語句
在程式設計中,我們使用迴圈來迭代不同型別的物件。由於其簡單性,for
迴圈是使用最廣泛的迴圈之一。
Python 有一個與 for
迴圈相關的非常有趣的特性。它允許我們使用 else
語句和 for
迴圈來組合條件執行和迭代。else
關鍵字通常用於 if-else 語句中,當 if 條件返回 false 時,我們使用它來執行一些命令。
然而,當我們在 Python 中使用 for
迴圈時,情況並非如此。考慮到迴圈在任何迭代中都沒有遇到 break
語句,迴圈結束時,else
塊中的語句將根據完成子句執行。break
語句用於中斷迴圈。如果沒有遇到 break
語句,則在迴圈之後也會執行 else
塊語句。
如果遇到 continue
語句,則執行 else
語句。這是因為 continue
語句會強制進行下一次迭代。它不會打破迴圈。
請參考以下程式碼。
for i in range(3):
if(i > 5):
break
else:
print("Else Statements")
for i in range(3):
if(i > 1):
print("Break")
break
else:
print("Else Statements")
for i in range(3):
if(i > 1):
continue
else:
print("Else Statements after Continue")
輸出:
Else Statements
Break
Else Statements after Continue
現在,for...else
的使用不被許多有經驗的程式設計師所接受,因為它可能會導致對 else
關鍵字的使用產生混淆。但是,它在 Python 中仍然有一些有用的應用程式。
例如,如果我們在列表中搜尋一個元素並希望知道它是否存在於列表中,我們可以使用它。以下程式碼片段實現了這一點。
a = 15
lst = [10,5,6,8,9,7,5,11]
for i in lst:
if(i == 15):
print("Found")
break
else:
print("Not Found Loop Over")
輸出:
Not Found Loop Over
else
關鍵字的使用不僅限於 for
迴圈,也可以與 Python 中的 while
迴圈一起使用。
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn