Pythonでは、ループ中に例外が発生した場合でも処理を続行することが可能です。具体的には、try/except
ブロックを使用して例外をキャッチし、continue
ステートメントを使用して次のイテレーションに進むことができます。
以下に、その使用例を示します。
for i in range(10):
try:
# 何らかの処理
if i == 5:
raise Exception("例外発生")
except Exception as e:
print(f"エラー: {e}")
continue # 次のイテレーションに進む
このコードでは、i
が5のときに例外が発生します。しかし、except
ブロック内でcontinue
ステートメントが実行されるため、ループは中断されずに次のイテレーションに進みます。
また、finally
句を使用すると、例外が発生してもしなくても必ず実行される処理を定義することができます。これは、例外が発生した場合でも特定のクリーンアップ処理を保証するために便利です。
for i in range(10):
try:
# 何らかの処理
if i == 5:
raise Exception("例外発生")
except Exception as e:
print(f"エラー: {e}")
continue # 次のイテレーションに進む
finally:
print("この処理は必ず実行されます")
このコードでは、finally
句により、各イテレーションの最後に必ず特定のメッセージが出力されます。
以上が、Pythonでループと例外処理を組み合わせる基本的な方法です。これにより、例外が発生した場合でもループを続行し、必要な処理を確実に行うことができます。