カテゴリ: Python 更新日: 2026/05/02

Pythonのエラーと例外とは?初心者がよく出会うエラーとその対処法

Pythonのエラーと例外とは?初心者がよく出会うエラーとその対処法
Pythonのエラーと例外とは?初心者がよく出会うエラーとその対処法

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

生徒

「Pythonってどんなときにエラーが出るんですか?」

先生

「エラーは、プログラムの書き方が間違っていたり、実行中に問題が起きたときに出ますよ。」

生徒

「エラーって怖い感じがして苦手なんですけど、大丈夫ですか?」

先生

「大丈夫。どんなエラーがあるのかを知っておけば、落ち着いて対処できます。一緒に学んでいきましょう!」

1. エラーと例外の違いとは?

1. エラーと例外の違いとは?
1. エラーと例外の違いとは?

Pythonでは「エラー」と呼ばれるものに大きく分けて2種類あります。ひとつは文法エラー(構文エラー)、もうひとつは例外(実行時エラー)です。

文法エラーは、Pythonのルールに従っていないコードを書いたときに発生します。例えば、if文の後にコロン(:)を忘れたり、インデントを正しく揃えていなかったりすると出ます。プログラムは文法エラーがあると実行されません。

例外は、プログラムの実行中に思わぬ問題が起きたときに発生します。たとえば、0で割ろうとしたり、存在しないファイルを開こうとしたりするとエラーが出ます。例外は、コードの書き方自体は正しい場合でも、実行時の状況によって発生するので、予期しない動作を防ぐために知っておくことが重要です。

簡単な例を挙げると、次のコードは文法エラーになります。


if True
    print("こんにちは")

コロンが抜けているため、Pythonはここで止まってしまいます。一方、次のコードは例外の例です。


print(10 / 0)

この場合、文法は正しいですが、0で割っているため実行時にエラー(ZeroDivisionError)が発生します。初心者はまず、文法エラーと例外の違いを理解して、どちらのケースでも冷静に対処できるように意識することが大切です。

2. よくある文法エラーの例

2. よくある文法エラーの例
2. よくある文法エラーの例

文法エラーは、Pythonがコードを読んで「これでは実行できないよ」と止まってしまう状態です。初心者の方がよく遭遇するエラーの一つで、ちょっとした書き間違いでもプログラムは動きません。たとえば次のようなコードです。


if True
    print("こんにちは")

このコードでは、if文のあとにコロン(:)がないため、PythonはSyntaxErrorを返します。コロンを忘れるだけで処理が止まるので、初心者は特に注意が必要です。また、インデント(字下げ)が正しくない場合も文法エラーになります。

正しく書くと次のようになります。こうした小さなミスを理解して修正することが、Pythonをスムーズに学ぶ第一歩です。


if True:
    print("こんにちは")

3. よくある例外(実行時エラー)の例

3. よくある例外(実行時エラー)の例
3. よくある例外(実行時エラー)の例

例外とは、プログラムの実行中に予期しない問題が発生したときに起こるエラーのことです。初めてプログラミングを学ぶ方でも理解しやすいように、よく見かける例を具体的なサンプル付きで紹介します。これを知っておくと、エラーが出たときに原因を素早く見つけやすくなります。

ZeroDivisionError(ゼロ除算エラー)

0で割り算をしようとしたときに発生するエラーです。数学でも0で割ることはできないので、Pythonでも同じようにエラーになります。


print(10 / 0)

例えば上記のコードを実行すると「ZeroDivisionError: division by zero」というエラーが出ます。これは「0で割ろうとした」という意味です。

NameError(名前エラー)

まだ定義していない変数や関数を使おうとしたときに出るエラーです。プログラムがどの変数のことか分からないために発生します。


print(apple)

この場合、「apple」という変数を事前に作っていないのでエラーになります。変数名のスペルミスでも同じエラーが出ます。

TypeError(型エラー)

異なる種類のデータを不適切に組み合わせようとしたときに起こるエラーです。例えば文字列と数字をそのまま足そうとするとエラーになります。


print("年齢は" + 20)

上記のコードでは文字列と整数を足しているため「TypeError」が発生します。解決するには、整数を文字列に変換するなど、型を揃える必要があります。型の違いに注意することで、プログラムの動作を正しく制御できます。

4. エラーの内容をよく読もう

4. エラーの内容をよく読もう
4. エラーの内容をよく読もう

Pythonでは、エラーが出るとその原因を教えてくれるメッセージが表示されます。このメッセージを読めば、どこで何が問題だったのかがわかります。

たとえば、次のように表示されることがあります。


Traceback (most recent call last):
  File "main.py", line 1, in <module>
    print(10 / 0)
ZeroDivisionError: division by zero

これは「1行目で 0 で割ってるよ」という意味です。

5. エラーを見つけたらどうすればいい?

5. エラーを見つけたらどうすればいい?
5. エラーを見つけたらどうすればいい?

エラーが出たら、まずは落ち着いて、どのエラーかを確認しましょう。そして、エラーの種類に応じて次のように対処します。

  • SyntaxError → コロンや記号の抜け、インデントを見直す
  • NameError → 変数のスペルや定義漏れを確認する
  • TypeError → 数値と文字列など、型の違いをチェックする
  • ZeroDivisionError → 0で割っていないか確認する

エラーメッセージをそのままGoogle検索すると、解決方法がたくさん見つかりますよ。

6. はじめのうちはエラーは出て当然!

6. はじめのうちはエラーは出て当然!
6. はじめのうちはエラーは出て当然!

初心者のうちは、エラーが出るのは当たり前です。むしろエラーが出るたびに、「お、今学べるチャンスだ」と思ってください。

実際、エンジニアでも毎日エラーと向き合っています。大事なのは「どう直すかを考える力」です。

7. エラーを自分で試してみよう

7. エラーを自分で試してみよう
7. エラーを自分で試してみよう

最後に、自分でいろんなエラーをわざと出してみて、どんな表示になるのかを確認してみましょう。エラーの種類とメッセージを見て慣れていくと、少しずつ怖くなくなりますよ。

そして、エラーの英語メッセージも「なにが起こったか」を説明しているので、辞書などで少しずつ意味を知っていくと役立ちます。

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Pythonのエラーと例外の違いは何ですか?初心者にもわかりやすく教えてください。

Pythonのエラーには大きく分けて「文法エラー(構文エラー)」と「例外(実行時エラー)」の2種類があります。文法エラーはコードの書き方が間違っているときに起こり、例外はプログラムの実行中に思いがけない事態が起こったときに発生します。

Pythonでよくある文法エラーにはどんなものがありますか?

Pythonの文法エラーでは、コロン(:)の付け忘れや、インデントのずれなどが多く見られます。たとえばif文のあとにコロンがない場合はSyntaxErrorというエラーになります。
コメント
コメント投稿は、ログインしてください

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

カテゴリの一覧へ
新着記事
New1
PHP
PHPでセッションを使ってフォーム入力を保持する方法を解説!初心者向けステップバイステップ
New2
PHP
PHP の文字列の基本操作(連結・切り出し・長さ)の使い方
New3
PHP
PHPのメール送信でSPF・DKIM認証設定を完全解説!初心者でもわかるメール認証の基本
New4
Python
PythonでAPIのパフォーマンスを向上させる方法!キャッシュ活用を初心者向けに完全解説
人気記事
No.1
Java&Spring記事人気No1
Python
Pythonで文字列が数値か判定する方法!isdigit()・isnumeric()の違い
No.2
Java&Spring記事人気No2
PHP
PHP のフォームデータの受け取り($_POST, $_GET)を完全解説!初心者向けガイド
No.3
Java&Spring記事人気No3
Python
Pythonで辞書のネスト構造(入れ子辞書)を扱う方法 初心者向け完全ガイド
No.4
Java&Spring記事人気No4
Python
Pythonのコンストラクタ(__init__)の使い方!初心者でもわかるオブジェクトの初期化
No.5
Java&Spring記事人気No5
PHP
PHPのHTMLメールの作成方法を完全ガイド!初心者でもわかるメール送信の基本
No.6
Java&Spring記事人気No6
Python
Pythonで2次元リストを作成・操作する方法(リストのリスト)
No.7
Java&Spring記事人気No7
Python
PythonでExcelファイル(.xlsx)を操作する方法を徹底解説!初心者でもできるopenpyxl・pandasの使い方
No.8
Java&Spring記事人気No8
Python
Pythonの例外を発生させる方法を完全解説!raise文の使い方を初心者向けにやさしく説明