如果我有代码:
try:
1 / 0
except Exception as e:
my_error = e
#e is sent to the application user end
它返回e
的文本,但也不返回异常名称。就我需要的代码而言,控制台当时未打开,并且在捕获到异常后将其发送到用户端。在发生异常的那一刻,我可以看到错误文本,但如何获得名称也是如此。
在示例中,我希望my_error
是
ZeroDivisionError: #error text
而不是my_error
#error text
答案 0 :(得分:2)
如果仅查看错误的描述,那么您正在查看。
err_str = str(e)
但是,如果您还在寻找异常名称及其描述,那么您正在寻找。
err_str = repr(e)
答案 1 :(得分:1)
在异常块中使用以下代码。
e.__class__.__name__