Pythonでエラーが発生してもプログラムを止めない!「try-except」の基本

投稿者: | 2026-04-13

プログラムを作成していると、思わぬエラーで実行が中断されてしまうことがありますよね。

特にユーザーが使うアプリケーションでは、エラーで急にプログラムが止まってしまうと、とても困ります。

そんな時に役立つのが、Pythonのtry-except文です。エラーを事前にキャッチして、プログラムを安全に続行させる方法をご紹介します。

Pythonでエラーが発生してもプログラムが停止するのを防ぐには、try-except文を使います。

tryブロック内にエラーが発生しうる処理を記述し、もしエラーが発生したらexceptブロック内の処理が実行されます。

これにより、プログラムが予期せず終了するのを防ぎ、ユーザーに優しいアプリケーションを作ることができます。

以下の例では、数字ではない入力やゼロ除算など、どのようなエラーが発生した場合でも、エラーメッセージを表示してプログラムの実行を続行します。

print("計算を開始します。")

try:
    # ここにエラーが発生しうる処理を書きます
    # 例:ユーザーからの入力を受け取り、整数に変換して割り算を行う
    user_input_str = input("数字を入力してください: ")
    number = int(user_input_str) # 数字以外の文字列が入力されるとValueErrorが発生

    result = 10 / number # numberが0だとZeroDivisionErrorが発生

    print(f"計算結果: 10 / {number} = {result}")

except Exception as e:
    # どんな種類のエラーでも、このブロックが実行されます
    print(f"エラーが発生しました: {e}")
    print("プログラムの実行を中断せず、エラーを処理しました。")

print("プログラムは無事に終了しました。")

みーちゃんのワンポイント

try-except文では、exceptの後にExceptionではなく、ValueErrorZeroDivisionErrorのように特定の例外名を指定することで、より細かくエラーをハンドリングできます。こうすることで、エラーの種類に応じた適切な処理ができるようになり、プログラムがさらに賢くなりますよ。