【Python3.x】OSError::errno定数の使い方
errno定数の使い方について、初心者にもわかりやすく解説します。
基本的な使い方
errno定数は、オペレーティングシステムが報告するエラーの種類を数値で表す定数です。Pythonでは、主にOSError例外オブジェクトのerrnoプロパティに、この定数値が設定されて利用されます。ファイルやディレクトリが見つからない、アクセスが拒否された、といったシステムレベルの処理で問題が発生した際に、その具体的な原因を特定するためにこの数値が用いられます。
OSErrorまたはそのサブクラス(例: FileNotFoundError、PermissionErrorなど)が発生した場合、捕捉した例外オブジェクトのerrnoプロパティからこの定数値にアクセスできます。たとえば、ファイルが見つからないエラーの場合、OSErrorオブジェクトのerrnoには「ファイルまたはディレクトリが見つかりません」を意味する特定の整数値(通常は2)が保持されます。
このerrno定数が示す数値は、標準のCライブラリで定義されているエラーコードに対応する整数値です。errnoモジュールが提供するerrno.ENOENTやerrno.EACCESのようなシンボルが表す値と同じ意味を持ち、エラーの種類を詳細に判別する手掛かりとなります。これにより、プログラムは原因に応じた適切なエラーハンドリングや回復処理を実行できます。
システムエンジニアを目指す初心者の方々にとって、プログラムが予期せぬ動作をした際に、エラーメッセージだけでは判断が難しい詳細なエラー情報を得るために、このerrno定数を確認することは非常に重要です。問題の根本原因を正確に理解し、より堅牢で信頼性の高いアプリケーションを開発するためのエラー対応ロジックを実装するために役立ちます。
構文(syntax)
1try: 2 open("non_existent_file.txt", "r") 3except OSError as e: 4 error_code = e.errno
引数(parameters)
引数なし
引数はありません
戻り値(return)
int
OSError クラスの errno プロパティは、オペレーティングシステムが返したエラーコードを表す整数値を返します。この値は、発生した具体的なエラーの種類を特定するために使用されます。