カテゴリ: Python 更新日: 2026/03/07

Pythonの例外処理(try-except)の基本と書き方を徹底解説!初心者でもわかるエラー対策入門

Pythonの例外処理(try-except)の基本と書き方を解説
Pythonの例外処理(try-except)の基本と書き方を解説

先生と生徒の会話形式で理解しよう

生徒

「Pythonを実行したら、急に英語のエラーがたくさん出て止まってしまいました。これは何が起きているんですか?」

先生

「それはPython(パイソン)が例外(れいがい)を検知した状態ですね。プログラムの途中で困ったことが起きた、という合図です。」

生徒

「エラーが出ると怖くて…回避する方法はあるんですか?」

先生

「ありますよ。Pythonのtry-except(トライ・エクセプト)という例外処理を使えば、エラーが起きても安全に動かせます。」

1. Pythonの例外処理とは何か?

1. Pythonの例外処理とは何か?
1. Pythonの例外処理とは何か?

Pythonの例外処理(れいがいしょり)とは、プログラムの実行中に予期しない問題が起きたときでも、処理を安全に続けるための仕組みです。パソコンに例えると、急に電源が落ちそうになったときに、自動でデータを保存するような保険の役割を持っています。

初心者のうちは「エラー=失敗」と感じがちですが、実際の開発ではエラーは当たり前に発生します。大切なのは、エラーが起きたときにどう対応するかです。Pythonではその対応方法として、例外処理が用意されています。

2. 例外(Exception)とエラーの違い

2. 例外(Exception)とエラーの違い
2. 例外(Exception)とエラーの違い

Pythonでは、問題が起きた状態を例外(Exception:エクセプション)と呼びます。エラーという言葉と混同しやすいですが、プログラムの世界では「対処できる問題」という意味合いが強いです。

例えば、存在しないファイルを開こうとしたり、数字で割り算をするときにゼロで割ってしまった場合などが例外です。これらは事前に予測できるため、例外処理で対応できます。

3. try-exceptの基本的な書き方

3. try-exceptの基本的な書き方
3. try-exceptの基本的な書き方

Pythonの例外処理は、try(トライ)とexcept(エクセプト)を使って書きます。tryの中には「エラーが起きそうな処理」を書き、exceptの中には「エラーが起きたときの対応」を書きます。


try:
    x = int("abc")
    print(x)
except:
    print("数値に変換できませんでした。")

数値に変換できませんでした。

この例では、文字列を数値に変換しようとして失敗しています。本来ならプログラムは止まりますが、try-exceptを使うことで、代わりのメッセージを表示できます。

4. よく使われる代表的な例外の種類

4. よく使われる代表的な例外の種類
4. よく使われる代表的な例外の種類

Pythonには多くの例外が用意されていますが、初心者が最初に覚えるべきものは限られています。代表的なものとして、ZeroDivisionError(ゼロで割ったとき)やValueError(値が不正なとき)があります。


try:
    result = 10 / 0
    print(result)
except ZeroDivisionError:
    print("0で割ることはできません。")

0で割ることはできません。

このように例外の種類を指定すると、特定の問題だけに反応する処理が書けます。

5. 複数のexceptを書く方法

5. 複数のexceptを書く方法
5. 複数のexceptを書く方法

一つの処理で、複数の例外が起きる可能性もあります。その場合は、exceptを複数書くことで、状況に応じた対応ができます。


try:
    num = int(input("数字を入力してください: "))
    print(10 / num)
except ValueError:
    print("数字以外が入力されました。")
except ZeroDivisionError:
    print("0を入力すると計算できません。")

ユーザー入力があるプログラムでは、例外処理があるだけで安心感が大きく変わります。

6. elseとfinallyの役割

6. elseとfinallyの役割
6. elseとfinallyの役割

try-exceptには、else(エルス)やfinally(ファイナリー)を追加できます。elseは「例外が起きなかったとき」、finallyは「必ず最後に実行したい処理」を書く場所です。


try:
    x = int("100")
except ValueError:
    print("変換に失敗しました。")
else:
    print("正常に変換できました。")
finally:
    print("処理を終了します。")

正常に変換できました。
処理を終了します。

ファイルを閉じる処理など、必ず実行したい処理はfinallyに書くのが一般的です。

7. 例外処理を使うときの考え方

7. 例外処理を使うときの考え方
7. 例外処理を使うときの考え方

例外処理は、エラーを隠すための仕組みではありません。問題が起きる可能性を想定し、ユーザーや自分自身が困らないようにするための仕組みです。

初心者のうちは「とりあえずexceptを書く」形になりがちですが、どんな例外が起きるのかを考えながら書くことで、読みやすく安全なPythonコードになります。

8. Python初心者が例外処理を学ぶ意味

8. Python初心者が例外処理を学ぶ意味
8. Python初心者が例外処理を学ぶ意味

Pythonの例外処理は、プログラムを安定して動かすための基礎中の基礎です。try-exceptを理解すると、エラー表示に怯えず、落ち着いて原因を考えられるようになります。

プログラミング未経験者にとっても、例外処理は「失敗しても大丈夫な仕組み」と考えると理解しやすくなります。Pythonの例外処理を身につけることで、安心してコードを書けるようになるでしょう。

コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

関連記事:
カテゴリの一覧へ
新着記事
New1
Python
PythonでREST APIを作る方法!初心者向けFastAPI入門|Python API開発の基本
New2
PHP
PHPのコード品質向上ツール完全解説!PHPStan(ピーエイチピースタン)とPHPCS(ピーエイチピーシーエス)で初心者でも安全にデバッグしよう
New3
Python
Pythonでデータベースのログを記録・監視する方法を完全解説!初心者向けデータベースログ管理入門
New4
PHP
PHPのログファイルを活用したエラートラッキング完全ガイド|初心者でもわかるPHPデバッグ入門
人気記事
No.1
Java&Spring記事人気No1
PHP
PHP のフォームデータの受け取り($_POST, $_GET)を完全解説!初心者向けガイド
No.2
Java&Spring記事人気No2
Python
Pythonのインストール&環境構築!Windows・Mac・Linuxでの手順を初心者向けに解説
No.3
Java&Spring記事人気No3
Python
PythonでExcelファイル(.xlsx)を操作する方法を徹底解説!初心者でもできるopenpyxl・pandasの使い方
No.4
Java&Spring記事人気No4
Python
Pythonのコンストラクタ(__init__)の使い方!初心者でもわかるオブジェクトの初期化
No.5
Java&Spring記事人気No5
Python
Pythonでテキストファイルを1行ずつ読み込む方法(readline() / readlines())
No.6
Java&Spring記事人気No6
PHP
PHPの特殊文字とエスケープ処理を完全ガイド!初心者向けにhtmlspecialcharsとhtmlentitiesをやさしく解説
No.7
Java&Spring記事人気No7
Python
Pythonでデータベースの接続プールを使う方法を徹底解説!初心者向けPythonデータベース接続プール入門
No.8
Java&Spring記事人気No8
PHP
PHPのPHPUnitを使った単体テスト完全ガイド!初心者でもわかるテストとデバッグ入門