カテゴリ: 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の匿名関数(lambda)と通常の関数の違いを比較!使い分けガイド
New2
Python
Pythonの例外処理(try-except)の基本と書き方を徹底解説!初心者でもわかるエラー対策入門
New3
Python
Pythonのジェネレーター(yield)とは?イテレーターの作り方を解説
New4
Python
Pythonの関数型プログラミング入門!map, filter, reduce の活用方法
人気記事
No.1
Java&Spring記事人気No1
Python
Pythonのfinally文を徹底解説!例外発生時でも実行される処理の書き方と使い方
No.2
Java&Spring記事人気No2
Python
Pythonのダックタイピングとは?型チェックなしで動的に振る舞うOOP設計をやさしく解説
No.3
Java&Spring記事人気No3
Python
Pythonの書き方を基本から解説!はじめてのPythonプログラム
No.4
Java&Spring記事人気No4
PHP
PHP の可変変数と変数の参照渡しを完全解説!初心者でも理解できる動的変数の使い方
No.5
Java&Spring記事人気No5
PHP
PHPのCookieのSecure, HttpOnly, SameSite設定を初心者向けに解説
No.6
Java&Spring記事人気No6
Python
Pythonで文字列が数値か判定する方法!isdigit()・isnumeric()の違い
No.7
Java&Spring記事人気No7
PHP
PHPのJWT認証を完全ガイド!初心者でもわかるJSON Web Tokenの基本と安全な仕組み
No.8
Java&Spring記事人気No8
Python
Pythonで一時ファイルを作成・管理する方法!初心者でもわかるtempfileモジュール入門