そのコードを持っている場合:
try:
some_method()
except Exception, e:
この例外値 (つまり文字列表現) を取得するにはどうすればよいですか?
ベストアンサー1
使用str
try:
some_method()
except Exception as e:
s = str(e)
また、ほとんどの例外クラスにはargs
属性があります。多くの場合、args[0]
エラー メッセージになります。
str
pyfunc の推奨どおりに を使用すると、エラー メッセージがない場合には空の文字列が返されることに注意してください。ただし、 を使用するrepr
と、少なくとも例外のクラスが表示されます。私の考えでは、それを印刷する場合は、クラスが何であるかを気にせず、エラー メッセージだけが必要なエンド ユーザー向けです。
それは、実際に処理している例外のクラスと、それがどのようにインスタンス化されるかによって異なります。何か特別なことを考えていましたか?