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

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

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

作成日: 更新日:

基本的な使い方

args定数は、RecursionError という例外が発生した際に、そのエラーに関する具体的な情報や詳細なメッセージを保持する定数です。RecursionError は、Pythonプログラム内で関数が自分自身を繰り返し呼び出す「再帰」処理が、システムの許容する最大限の深さを超えて実行された場合に発生するエラーです。このargs定数には、エラー発生時にRecursionErrorオブジェクトの初期化に渡された引数がタプルとして格納されます。具体的には、通常「maximum recursion depth exceeded in comparison」といった、再帰の深さの限界を超えたことを示すエラーメッセージがこのタプルの要素として含まれています。

このargs定数を利用することで、プログラムの実行中にRecursionErrorが発生した場合に、例外オブジェクトから直接、問題の内容を示すメッセージを取得できます。これは、システムエンジニアがエラーの原因を迅速に特定し、デバッグやコードの改善を行う上で非常に重要な情報源となります。args定数はRecursionErrorだけでなく、Pythonの組み込み例外の多くに共通して存在する属性であり、様々な種類のエラーから詳細な情報を一貫した方法で取得するための標準的な仕組みを提供しています。

構文(syntax)

1import sys
2
3original_recursion_limit = sys.getrecursionlimit()
4sys.setrecursionlimit(100)
5
6def cause_recursion_error():
7    cause_recursion_error()
8
9try:
10    cause_recursion_error()
11except RecursionError as e:
12    print(e.args)
13finally:
14    sys.setrecursionlimit(original_recursion_limit)

引数(parameters)

引数なし

引数はありません

戻り値(return)

tuple

RecursionError例外が発生した際の、エラーメッセージや関連情報を含むタプルが返されます。

関連コンテンツ