处理Python 3.6中的异常

no0*_*by5 2 python exception try-except python-3.6

我试图在Python 3.6中处理异常.我想处理每个可能的异常并打印异常.当我做

try:
    raise RuntimeError("Test")

except:
    e = sys.exc_info()[0]
    print(e)
Run Code Online (Sandbox Code Playgroud)

它只是打印

class'_mysql_exceptions.OperationalError'

我如何得到异常的消息?在这种情况下,我希望输出为"测试".

Chr*_*nds 10

可以捕获并printException,如下所示:

try:
    raise RuntimeError("Test")
except Exception as e:
    print(e)
    # Test
Run Code Online (Sandbox Code Playgroud)

我不太确定你为什么要抓住每一个 Exception,但是让Python处理raise这些问题似乎更为谨慎.通常你只会抓住特定 Exception的.

此行为不是特定于Python 3.6.