Pythonのtry・except・elseステートメントの基本と使い方を徹底解説
Pythonで例外を処理する最も一般的な方法は、「try-except」ブロックを使用することです。さらに、except句の後に「else」句を追加することもできます。elseブロック内のステートメントは、tryブロック内で例外が発生しなかった場合にのみ実行されます。
else句の動作の仕組み
else句は省略可能な句です。制御フローがtry節の終わりまで正常に到達したとき、つまり例外が発生せず、かつreturn、continue、break文などによる中断もなかった場合に実行されます。言い換えれば、tryブロックが問題なく完了したときだけ、elseブロックが実行されるという仕組みです。
コード例
以下のコードは、try-except-else構文の基本的な使い方を示しています。
a = [11, 8, 9, 2]
try:
foo = a[3]
except:
print("index out of range")
else:
print("index well within range")
出力結果
このコードを実行すると、次の出力が得られます。
index well within range
この例では、リストaのインデックス3(4番目の要素)へのアクセスは有効な範囲内であるため、例外は発生せず、elseブロック内のメッセージが出力されます。もしリストの範囲外のインデックス(例えば a[10])にアクセスした場合は、IndexErrorが発生し、exceptブロックが実行されて「index out of range」が表示されます。
このように、else句を使うことで「成功時にだけ実行したい処理」を明確に分離でき、コードの可読性と保守性が向上します。エラー処理と通常処理をきれいに分けたい場面で、ぜひ活用してみてください。
-
Pythonで例外を無視して処理を続行する方法【try-exceptの正しい使い方】
例外を無視してプログラムを続行させる基本の書き方Pythonでは、try-exceptブロックとpass文を組み合わせることで、発生した例外を捕捉しながら、あえて何も処理せずにプログラムを続行できます。主な書き方は以下の2通りです。方法1:bare except(裸のexcept)を使うtry: 1/0except: pass方法2:except Exception を使うtry: 1/0except Exception: passどちらの場合も、pass文が「例外が発生しても何もしない」という役割を果たし、プログラムはそのまま次の処理へ進みます。bare except
-
Pythonの条件分岐をマスターする:if、else、elifの使い方徹底解説
このチュートリアルでは、Pythonにおける if、else、elif 文の使い方を詳しく解説します。 プログラミングでは、条件の結果に応じて処理を分岐させたい場面が頻繁にあります。Pythonでは、if 文を使って条件を評価し、その結果によって実行するコードを制御します。 Pythonのif文とは Pythonにおける if 文の基本構文は以下のとおりです。if condition: statement ここで特に注意すべきポイントは、コロン(:)とインデント(字下げ)です。Pythonではインデントによってコードブロックを定義するため、インデントが正しくないとエラーになります。