
【Python】try except文のエラー内容の取得方法を解説
公開: 更新:try-except文の基本構造とエラー取得
Pythonのtry-except
文は、エラー(例外)が発生した際にプログラムがクラッシュするのを防ぎ、エラーを適切に処理するために使用されます。
【サンプルコード】
try:
result = 10 / 0
except ZeroDivisionError:
print("0で割ることはできません")
finally:
print("処理が完了しました")
try:
ブロックでは、エラーが発生する可能性のあるコードを記述します。
ここではresult = 10 / 0
という式で、ゼロ除算のエラーが発生する可能性があります。
except ZeroDivisionError:
ブロックでは、ZeroDivisionError(ゼロ除算エラー)が発生した場合の処理を記述しており、「0で割ることはできません」というメッセージを表示します。
finally:
ブロックでは、エラーの有無に関わらず最終的に実行されるコードを記述しており、「処理が完了しました」というメッセージが表示されます。
【PR】『Python』を学べる企業・個人向けのプログラミングコース
複数の例外を扱う方法
複数の異なるエラーを一つのtry-exceptブロックで扱うことも可能です。
この方法は、プログラムが様々なエラーに対応できるようにするために役立ちます。
【サンプルコード】
try:
number = int(input("数字を入力してください: "))
except ValueError:
print("エラー: 入力された値は数字ではありません。")
except ZeroDivisionError:
print("エラー: 0で割ることはできません。")
try:
ブロックで、ユーザーからの入力を整数に変換しようとします。
except ValueError:
ブロックでは、入力された値が整数ではない場合(ValueErrorが発生した場合)の処理を記述します。
except ZeroDivisionError:
ブロックでは、ゼロ除算エラー(ZeroDivisionErrorが発生した場合)の処理を記述します。
特定のエラーの詳細情報を取得する
エラーの詳細情報を取得するには、例外オブジェクトを使用します。
例外オブジェクトは、発生したエラーに関する詳細な情報を持っています。
【サンプルコード】
try:
result = 10 / 0
except ZeroDivisionError as e:
print("エラー情報:", e)
except ZeroDivisionError as e:
では、発生したZeroDivisionErrorをe
という変数に格納し、この変数を使ってエラーの詳細情報を表示します。
【PR】『Python』を学べる個人・中高生向けのプログラミングコース
カスタム例外の作成と使用
独自の例外を定義し、特定の条件で発生させることもできるので、標準のエラークラスでは表現できない特定の状況を扱うために便利です。
【サンプルコード】
class MyError(Exception):
pass
try:
raise MyError("カスタムエラーが発生しました")
except MyError as e:
print("エラー発生:", e)
class MyError(Exception):
は、Exception
クラスを継承して新しい例外クラスMyError
を作成します。
raise MyError("カスタムエラーが発生しました")
で、MyError
例外を意図的に発生させます。
except MyError as e:
では、発生したMyError
例外をキャッチし、その内容を出力します。
※上記コンテンツの内容やソースコードはAIで確認・デバッグしておりますが、間違いやエラー、脆弱性などがある場合は、コメントよりご報告いただけますと幸いです。
ITやプログラミングに関するコラム
- ChatGPTでプロンプトを使うコツとNG例|シーン別のプロンプト例まで徹底解説
- ChatGPT 4oアップデートで高クオリティな画像生成が可能に!具体例や作り方、プロンプトのコツを紹介
- 【Open AI・Claude】プロンプトジェネレーターの使い方。ChatGPTで活用するコツや利用料金も併せて解説
- 【Python】@(アットマーク)の意味を簡単に解説
- 【Python】match case(match文)で複数条件を処理する方法