この記事では、Pythonにおける例外処理の方法と、具体的な例外の種類について解説します。
例外処理は、プログラムの実行中に予期しないエラーが発生した場合に、プログラムがクラッシュするのを防ぐために使用されます。
初心者の方でもわかりやすく、サンプルコードとともに例外処理の基本を見ていきましょう。
目次から探す
例外処理の方法
例外処理は、プログラムの実行中に予期しないエラーが発生した場合に、プログラムがクラッシュするのを防ぐために使用されます。
Pythonでは、try-except文
を使用して例外処理を行います。
try-except文の基本構文
try:
# 例外が発生する可能性のあるコード
except Exception:
# 例外が発生した場合の処理
tryブロック内のコードが実行され、例外が発生しなければそのまま処理が続行されます。
しかし、例外が発生した場合は、exceptブロック内の処理が実行されます。
複数の例外をまとめて処理する方法
複数の例外をまとめて処理する場合は、複数のexceptブロックを使用します。
try:
# 例外が発生する可能性のあるコード
except ExceptionType1:
# 例外1が発生した場合の処理
except ExceptionType2:
# 例外2が発生した場合の処理
else節とfinally節の使い方
else節は、tryブロック内のコードが例外なく実行された場合に実行されるブロックです。
try:
# 例外が発生する可能性のあるコード
except Exception:
# 例外が発生した場合の処理
else:
# 例外が発生しなかった場合の処理
finally節は、例外の有無に関わらず、必ず実行されるブロックです。
try:
# 例外が発生する可能性のあるコード
except Exception:
# 例外が発生した場合の処理
finally:
# 例外の有無に関わらず実行される処理
基本的な例外
exception
exceptionは、すべての例外の基底クラスです。
他の例外クラスは、このexceptionクラス
を継承しています。
あわせて読みたい
【Python】exceptionとは?発生原因や対処法・回避方法を解説
この記事では、Pythonにおけるexception(例外)について、exceptionの定義や発生原因、さらには対処法や回避方法についてわかりやすく説明します。 初心者の方でも理解し…
ArithmeticError
ArithmeticErrorは、算術演算に関連するエラーを表す例外クラスです。
例えば、ゼロ除算やオーバーフローなどが該当します。
あわせて読みたい
【Python】ArithmeticErrorとは?発生原因や対処法・回避方法を解説
Pythonプログラミングで遭遇することのある例外の一つであるArithmeticError。 この記事では、ArithmeticErrorが発生する原因や対処法について、サンプルコードを交えな…
BufferError
BufferErrorは、バッファ操作に関連するエラーを表す例外クラスです。
あわせて読みたい
【Python】BufferErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムでよく見られるエラーであるBufferErrorについて解説します。 BufferErrorの発生原因や対処法、回避方法についてわかりやすく説明します…
LookupError
LookupErrorは、シーケンスやマッピングの検索操作に関連するエラーを表す例外クラスです。
IndexErrorやKeyErrorなどが該当します。
あわせて読みたい
【Python】LookupErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムでよく発生するLookupErrorというエラーについて解説します。 LookupErrorの発生原因や種類、そして対処法について、初心者の方でも理解…
具象例外
AssertionError
AssertionErrorは、assert文
の条件がFalseの場合に発生する例外です。
あわせて読みたい
【Python】AssertionErrorとは?発生原因や対処法・回避方法を解説
デバッグ時などで見られるArithmeticError。 この記事では、Pythonプログラムでよく見られるエラーであるAssertionErrorについて、サンプルコードを交えながら解説しま…
AttributeError
AttributeErrorは、属性へのアクセスが失敗した場合に発生する例外です。
あわせて読みたい
【Python】AttributeErrorとは?発生原因や対処法・回避方法を解説
Pythonプログラミングで見る例外の中でも見る機会の多いAttributeError。 この記事では、AttributeErrorとは何が原因で発生する例外なのか、対処方法や回避方法などを解…
EOFError
EOFErrorは、入力の終わりに達した場合に発生する例外です。
あわせて読みたい
【Python】EOFErrorとは?発生原因や対処法・回避方法を解説
プログラミング勉強中の人が遭遇しやすいEOFError。 この記事では、Pythonプログラムでよく見かける EOFError というエラーについて、発生原因や対処法、回避方法につい…
FloatingPointError
FloatingPointErrorは、浮動小数点演算に関連するエラーを表す例外クラスです。
あわせて読みたい
【Python】FloatingPointErrorとは?発生原因や対処法・回避方法を解説
この記事では、PythonにおけるFloatingPointError(浮動小数点エラー)の発生原因や対処法、回避方法について解説します。 初心者の方でもわかりやすく、具体的なサンプル…
GeneratorExit
GeneratorExitは、ジェネレータ関数が終了する際に発生する例外です。
あわせて読みたい
【Python】GeneratorExitとは?発生原因や対処法・回避方法を解説
この記事では、Pythonのジェネレータ関数やジェネレータオブジェクトにおいて発生する GeneratorExit という特殊な例外について解説します。 GeneratorExitの発生原因や…
ImportError
ImportErrorは、モジュールのインポートに関連するエラーを表す例外クラスです。
あわせて読みたい
【Python】ImportErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムでよく見かけるImportErrorについて解説します。 ImportErrorが発生する原因や対処法、回避方法について、具体的な例やサンプルコードを…
ModuleNotFoundError
ModuleNotFoundErrorは、指定されたモジュールが見つからなかった場合に発生する例外です。
あわせて読みたい
【Python】ModuleNotFoundErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムでよく見かけるModuleNotFoundErrorというエラーについて解説します。 ModuleNotFoundErrorの発生原因や対処法、回避方法についてわかり…
IndexError
IndexErrorは、シーケンスのインデックスが範囲外の場合に発生する例外です。
あわせて読みたい
【Python】IndexErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムでよく見られるエラーであるIndexErrorについて解説します。 IndexErrorの発生原因や対処法、回避方法について、サンプルコードを合わせ…
KeyError
KeyErrorは、辞書のキーが存在しない場合に発生する例外です。
あわせて読みたい
【Python】KeyErrorとは?発生原因や対処法・回避方法を解説
この記事では、PythonプログラミングにおけるKeyErrorというエラーについて解説します。 KeyErrorが発生する原因や対処法、回避方法についてわかりやすく説明します。 …
KeyboardInterrupt
KeyboardInterruptは、ユーザーがキーボードの割り込みキーを押した場合に発生する例外です。
あわせて読みたい
【Python】KeyboardInterruptとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムの実行中にキーボードの割り込みが発生した場合に起こるKeyboardInterruptエラーについて解説します。 KeyboardInterruptの発生原因や対…
MemoryError
MemoryErrorは、メモリの割り当てに失敗した場合に発生する例外です。
あわせて読みたい
【Python】MemoryErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムで発生するMemoryErrorというエラーについて解説します。 MemoryErrorの発生原因や対処法、回避方法について、初心者の方でも理解しやす…
NameError
NameErrorは、変数や関数が定義されていない場合に発生する例外です。
あわせて読みたい
【Python】NameErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラミングにおいてよく遭遇するエラーであるNameErrorについて解説します。 NameErrorは初心者が特にやってしまいがちなので、Pythonプログラ…
NotImplementedError
NotImplementedErrorは、未実装のメソッドが呼び出された場合に発生する例外です。
あわせて読みたい
【Python】NotImplementedErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラミングにおいてよく見られるエラーであるNotImplementedErrorについて解説します。 NotImplementedErrorの発生原因や対処法、回避方法につ…
OSError([arg])
OSErrorは、オペレーティングシステムに関連するエラーを表す例外クラスです。
あわせて読みたい
【Python】OSErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムで発生するOSErrorというエラーについて解説します。 OSErrorの発生原因や対処法、回避方法についてわかりやすく、具体的な例やコードを…
OverflowError
OverflowErrorは、演算結果がオーバーフローした場合に発生する例外です。
あわせて読みたい
【Python】OverflowErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムで発生するOverflowErrorについて、発生原因や対処法、例外処理の方法、注意点などをサンプルコードを交えて解説します。 OverflowError…
RecursionError
RecursionErrorは、再帰呼び出しが深すぎる場合に発生する例外です。
あわせて読みたい
【Python】RecursionErrorとは?発生原因や対処法・回避方法を解説
この記事では、初心者向けにRecursionErrorとは何か、その発生原因、対処法、例外処理についてわかりやすく解説します。 RecursionErrorは再帰関数と密接な関係にある例…
ReferenceError
ReferenceErrorは、無効な参照が発生した場合に発生する例外です。
あわせて読みたい
【Python】ReferenceErrorとは?発生原因や対処法・回避方法を解説
この記事では、PythonプログラミングにおけるReferenceErrorの意味や発生原因、対処法、回避方法についてわかりやすく解説しています。 初心者の方でも、ReferenceError…
RuntimeError
RuntimeErrorは、実行時に発生する一般的なエラーを表す例外クラスです。
あわせて読みたい
【Python】RuntimeErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムでよく発生するRuntimeErrorについて、その原因や対処法、回避方法についてわかりやすく解説しています。 初心者の方でも理解しやすいよ…
StopIteration
StopIterationは、イテレータが終了したことを示す例外です。
あわせて読みたい
【Python】StopIterationとは?発生原因や対処法・回避方法を解説
この記事では、PythonのStopIterationというエラーについて、発生する原因や対処法、回避方法についてわかりやすく説明します。 初心者の方でも理解しやすいように、具…
StopAsyncIteration
StopAsyncIterationは、非同期イテレータが終了したことを示す例外です。
あわせて読みたい
【Python】StopAsyncIterationとは?発生原因や対処法・回避方法を解説
この記事では、Pythonの非同期イテレータにおけるStopAsyncIterationという特殊な例外について、発生原因や対処法、回避方法についてわかりやすく説明します。 非同期プ…
SyntaxError
SyntaxErrorは、構文エラーがある場合に発生する例外です。
あわせて読みたい
【Python】SyntaxErrorとは?発生原因や対処法・回避方法を解説
この記事では、PythonプログラミングにおけるSyntaxErrorの意味や発生原因、そして対処法や回避方法についてわかりやすく解説します。 初心者の方でも理解しやすいよう…
IndentationError
IndentationErrorは、インデントのエラーがある場合に発生する例外です。
あわせて読みたい
【Python】IndentationErrorとは?発生原因や対処法・回避方法を解説
この記事では、PythonプログラミングにおけるIndentationError(インデンテーションエラー)について詳しく解説します。 IndentationErrorの発生原因や対処法、回避方法に…
TabError
TabErrorは、タブとスペースの混在によるエラーがある場合に発生する例外です。
あわせて読みたい
【Python】TabErrorとは?発生原因や対処法・回避方法を解説
この記事では、PythonプログラミングにおけるTabErrorというエラーについて解説します。 TabErrorの発生原因や対処法、回避方法についてわかりやすく説明します。 初心…
SystemError
SystemErrorは、インタープリタ内部のエラーを表す例外クラスです。
あわせて読みたい
【Python】SystemErrorとは?発生原因や対処法・回避方法を解説
この記事では、PythonプログラミングにおけるSystemErrorの意味や発生原因、具体的なエラーメッセージ、対処法、回避方法について解説します。 初心者の方でもわかりや…
SystemExit
SystemExitは、sys.exit()関数
が呼び出された場合に発生する例外です。
あわせて読みたい
【Python】SystemExitとは?発生原因や対処法・回避方法を解説
この記事では、PythonプログラミングにおけるSystemExitという例外について解説します。 SystemExitの発生原因や対処法、回避方法について、初心者の方でも理解しやすい…
TypeError
TypeErrorは、オブジェクトの型が不正な場合に発生する例外です。
あわせて読みたい
【Python】TypeErrorとは?発生原因や対処法・回避方法を解説
TypeErrorとは、データ型の不一致や不正な使用によって発生するエラーですが、様々な原因で発生します。 この記事では、PythonプログラミングにおけるTypeErrorについて…
UnboundLocalError
UnboundLocalErrorは、ローカル変数が初期化されていない場合に発生する例外です。
あわせて読みたい
【Python】UnboundLocalErrorとは?発生原因や対処法・回避方法を解説
はじめに、この記事ではPythonプログラミングにおいてよく見られるエラーであるUnboundLocalErrorについて、発生原因や対処法、回避方法についてわかりやすく説明します…
UnicodeError
UnicodeErrorは、Unicode関連のエラーを表す例外クラスです。
あわせて読みたい
【Python】UnicodeErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムで発生するUnicodeErrorの原因や種類、そして対処法や回避方法について解説します。 【UnicodeErrorとは?】 UnicodeErrorは、Pythonプ…
UnicodeEncodeError
UnicodeEncodeErrorは、Unicode文
字列のエンコードに関連するエラーを表す例外クラスです。
あわせて読みたい
【Python】UnicodeEncodeErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムでよく遭遇するUnicodeEncodeErrorというエラーについて解説します。 【UnicodeEncodeErrorとは?】 UnicodeEncodeErrorは、Pythonプロ…
UnicodeDecodeError
UnicodeDecodeErrorは、Unicode文
字列のデコードに関連するエラーを表す例外クラスです。
あわせて読みたい
【Python】UnicodeDecodeErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラミングにおいてよく遭遇するエラーである UnicodeDecodeError について解説します。 UnicodeDecodeErrorの発生原因や対処法、回避方法につ…
UnicodeTranslateError
UnicodeTranslateErrorは、Unicode文
字列の変換に関連するエラーを表す例外クラスです。
あわせて読みたい
【Python】UnicodeTranslateErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラミングにおいてよく見られるエラーであるUnicodeTranslateErrorについて、発生原因や対処法、回避方法についてわかりやすく説明します。 …
ValueError
ValueErrorは、引数の値が不正な場合に発生する例外です。
あわせて読みたい
【Python】ValueErrorとは?発生原因や対処法・回避方法を解説
この記事では、PythonプログラミングにおけるValueErrorの意味や発生原因、対処法、回避方法についてわかりやすく解説しています。 初心者の方でも理解しやすいように、…
ZeroDivisionError
ZeroDivisionErrorは、ゼロ除算が発生した場合に発生する例外です。
あわせて読みたい
【Python】ZeroDivisionErrorとは?発生原因や対処法・回避方法を解説
この記事では、ZeroDivisionErrorというエラーが発生する原因や対処法、回避方法についてわかりやすく解説しています。 サンプルコードとともに解説しているので、ZeroD…
OS例外
BlockingIOError
BlockingIOErrorは、非同期I/O操作がブロックされた場合に発生する例外です。
あわせて読みたい
【Python】BlockingIOErrorとは?発生原因や対処法・回避方法を解説
間違ったコードを書いたわけでもないのに発生してしまうこともあるBlockingIOError。 環境によっては発生するときと発生しない時があって悩んでいる人もいるでしょう。 …
ChildProcessError
ChildProcessErrorは、子プロセスに関連するエラーを表す例外クラスです。
あわせて読みたい
【Python】ChildProcessErrorとは?発生原因や対処法・回避方法を解説
この記事では、PythonプログラムでChildProcessErrorが発生した場合の原因や対処法、回避方法について解説します。 【ChildProcessErrorとは?】 ChildProcessErrorは、…
ConnectionError
ConnectionErrorは、接続に関連するエラーを表す例外クラスです。
あわせて読みたい
【Python】ConnectionErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムで発生するConnectionErrorというエラーについて解説します。 ConnectionErrorの発生原因や対処法、回避方法についてわかりやすく説明し…
BrokenPipeError
BrokenPipeErrorは、パイプが切断された場合に発生する例外です。
あわせて読みたい
【Python】BrokenPipeErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムでよく見られるエラーの一つであるBrokenPipeErrorについて解説します。 BrokenPipeErrorの発生原因や対処法、回避方法についてわかりや…
ConnectionAbortedError
ConnectionAbortedErrorは、接続が中断された場合に発生する例外です。
あわせて読みたい
【Python】ConnectionAbortedErrorとは?発生原因や対処法・回避方法を解説
ネットワーク関係の処理を含むプログラムで発生することにある例外「ConnectionAbortedError」。 この記事では、ConnectionAbortedErrorというエラーについて、サンプル…
ConnectionRefusedError
ConnectionRefusedErrorは、接続が拒否された場合に発生する例外です。
あわせて読みたい
【Python】ConnectionRefusedErrorとは?発生原因や対処法・回避方法を解説
ネットワーク処理を適切に行えていないときに発生しがちなConnectionRefusedError。 この記事では、Pythonプログラムでよく見られるエラーである ConnectionRefusedErro…
ConnectionResetError
ConnectionResetErrorは、接続がリセットされた場合に発生する例外です。
あわせて読みたい
【Python】ConnectionResetErrorとは?発生原因や対処法・回避方法を解説
ConnectionResetErrorは、ネットワーク通信中に接続が突然切断されるエラーであり、サーバー側の問題やクライアント側の問題、ネットワークの問題が原因となることが多…
FileExistsError
FileExistsErrorは、既に存在するファイルを作成しようとした場合に発生する例外です。
あわせて読みたい
【Python】FileExistsErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムでファイルやディレクトリを作成する際に発生する FileExistsError というエラーについて解説します。 サンプルコードを見ながら、エラ…
FileNotFoundError
FileNotFoundErrorは、指定されたファイルが見つからなかった場合に発生する例外です。
あわせて読みたい
【Python】FileNotFoundErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムでよく見かけるエラーである FileNotFoundError について解説します。 このエラーが発生する原因や対処法、回避方法についてわかりやす…
InterruptedError
InterruptedErrorは、システムコールが割り込まれた場合に発生する例外です。
あわせて読みたい
【Python】InterruptedErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムでよく見かけるInterruptedErrorというエラーについて解説します。 InterruptedErrorの発生原因や対処法、回避方法についてわかりやすく…
IsADirectoryError
IsADirectoryErrorは、ディレクトリに対してファイル操作を行おうとした場合に発生する例外です。
あわせて読みたい
【Python】IsADirectoryErrorとは?発生原因や対処法・回避方法を解説
IsADirectoryErrorは、Pythonプログラムでディレクトリを操作する際によく発生するエラーです。 この記事では、IsADirectoryErrorというエラーについて詳しく解説します…
NotADirectoryError
NotADirectoryErrorは、ディレクトリでないものに対してディレクトリ操作を行おうとした場合に発生する例外です。
あわせて読みたい
【Python】NotADirectoryErrorとは?発生原因や対処法・回避方法を解説
NotADirectoryErrorは、ディレクトリではないパスが指定された場合に発生するエラーですが、様々な原因で発生します。 この記事では、Pythonプログラムでよく発生するNo…
PermissionError
PermissionErrorは、アクセス権のエラーを表す例外クラスです。
あわせて読みたい
【Python】PermissionErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラムを実行する際に発生する PermissionError というエラーについて解説します。 PermissionErrorの発生原因や対処法、回避方法についてわか…
ProcessLookupError
ProcessLookupErrorは、プロセスが見つからなかった場合に発生する例外です。
あわせて読みたい
【Python】ProcessLookupErrorとは?発生原因や対処法・回避方法を解説
この記事では、Pythonプログラミングにおいてよく見られるエラーである ProcessLookupError について解説します。 ProcessLookupErrorの発生原因や対処法、回避方法につ…
TimeoutError
TimeoutErrorは、タイムアウトが発生した場合に発生する例外です。
あわせて読みたい
【Python】TimeoutErrorとは?発生原因や対処法・回避方法を解説
この記事では、TimeoutErrorというエラーについて、発生する原因や対処法、回避方法についてわかりやすく説明します。 プログラミング初心者の方にも理解しやすいように…
ユーザー定義の例外の作成方法
自作例外クラスの作成方法
Pythonでは、ユーザーが独自の例外クラスを作成することができます。
自作例外クラスを作成するには、Exceptionクラス
を継承します。
class CustomException(Exception):
pass
例外クラスの継承とカスタマイズ
自作例外クラスを作成する際には、Exceptionクラス
を継承してカスタマイズすることができます。
例外クラスには、エラーメッセージや追加の属性を追加することができます。
class CustomException(Exception):
def __init__(self, message, additional_info):
super().__init__(message)
self.additional_info = additional_info
このようにして作成した自作例外クラスは、try-except文
で捕捉することができます。
以上がPythonで使用できる例外処理の種類とexception一覧です。
例外処理は、プログラムの安定性を高めるために重要な機能ですので、ぜひ活用してみてください。