Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Python3.x】NameError::args定数の使い方

args定数の使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

args定数は、PythonにおいてNameError例外が発生した際に、その例外オブジェクトが保持する詳細情報(エラーメッセージなど)をタプルとして格納する定数です。

NameErrorは、プログラム内で定義されていない変数名や関数名などの「名前」を参照しようとしたときに発生する、Pythonの組み込み例外の一つです。例えば、誤ったスペルの変数を使おうとした場合などにこのエラーが発生し、プログラムの実行は中断されます。

このargsは、Pythonの全ての例外オブジェクトが共通して持つ特別な属性として機能し、例外が初期化される際にコンストラクタに渡された引数をタプル形式で保持します。NameErrorの場合、args定数には通常、どの名前が見つからなかったかを示すエラーメッセージの文字列が単一の要素として格納されます。具体的には、「name 'your_variable' is not defined」のようなエラーメッセージが('name \'your_variable\' is not defined',)というタプルとして含まれます。

システムエンジニアを目指す初心者にとって、エラー処理は非常に重要なスキルです。プログラムがNameErrorなどの例外を捕捉した際に、このargs定数から具体的なエラーメッセージを取り出すことで、何が原因でエラーが発生したのかを正確に把握し、デバッグやユーザーへの分かりやすいエラー通知を行うことが可能になります。これにより、より堅牢で信頼性の高いシステムを構築するための基礎を学ぶことができます。

構文(syntax)

1try:
2    # 未定義の変数を参照することでNameErrorを発生させる
3    print(my_undefined_variable)
4except NameError as e:
5    # NameErrorオブジェクト e の args 属性にアクセスする構文
6    # args には例外発生時に渡された引数(通常はエラーメッセージを含むタプル)が格納される
7    error_message_tuple = e.args

引数(parameters)

引数なし

引数はありません

戻り値(return)

tuple

NameError.args は、発生したエラーに関する情報を含むタプルを返します。このタプルには、エラーメッセージのフォーマット文字列と、それに埋め込まれる引数が格納されています。

関連コンテンツ