web-dev-qa-db-ja.com

Python例外からエラーコードを取得

Pythonでは、例外を処理し、エラーコードとメッセージを出力するコードがあります。

try:
    somecode() #raises NameError
except Exception as e:
    print('Error! Code: {c}, Message, {m}'.format(c = e.code, m = str(e))

しかしながら、 e.codeはエラー名(NameError)を取得する適切な方法ではなく、これに対する答えを見つけることができません。エラーコードを取得するにはどうすればよいですか。

5

これを試して:

try:
    somecode() #raises NameError
except Exception as e:
    print('Error! Code: {c}, Message, {m}'.format(c = type(e).__name__, m = str(e)))

詳細については this を参照してください。

2
63677

Pythonの例外には「コード」はありません。

codeというプロパティを持つカスタム例外を作成し、必要に応じてそのプロパティにアクセスして印刷できます。

This 回答には、カスタム例外にcodeプロパティを追加する例があります。

0
Dustin Wyatt