実践 中級

53. 例外処理①:try/except

try/exceptとは

ここまでのレッスンで、ZeroDivisionErrorやValueErrorなど、さまざまなエラーが登場してきました。実際のプログラムでは、エラーが起きる可能性を完全にゼロにはできません。そこで大事になるのが、エラーが起きても止まらずに立て直す仕組みです。tryブロックの中でエラーが発生すると、対応するexceptブロックが実行され、プログラムが強制終了せずにそのまま処理を続けられます。エラーの種類ごとにexceptを分けて、それぞれ違う対応をすることもできます。

サンプルコード

try:
    num = int('abc')
except ValueError:
    print('数値に変換できませんでした')
int('abc')は本来ValueErrorを発生させてプログラムを止めてしまいますが、exceptブロックがそのエラーを受け止め、代わりにわかりやすいメッセージを表示してプログラムを継続させています。

📝 練習問題

練習問題:10を0で割る処理をtry/exceptで囲み、ZeroDivisionErrorをキャッチして「ゼロで割れません」と表示してください。