Python の for ... else ステートメント
プログラミングでは、さまざまなタイプのオブジェクトを反復処理するためにループを使用します。for
ループは、その単純さから、最も広く使用されているループの 1つです。
Python には、for
ループに関連する非常に興味深い機能があります。これにより、条件の実行と反復を組み合わせるために、else
ステートメントを for
ループとともに使用できます。else
キーワードは通常、if-else ステートメントで使用され、if 条件が false を返したときにいくつかのコマンドを実行するために使用します。
ただし、Python で for
ループを使用する場合はそうではありません。else
ブロック内のステートメントは、ループがどの反復でも break
ステートメントに遭遇しない場合、ループが終了したときに完了句に基づいて実行されます。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