如果我这样做(例如)
open("/snafu/fnord")
Run Code Online (Sandbox Code Playgroud)
在Python中(并且该文件不存在),我得到一个追溯和消息
IOError: [Errno 2] No such file or directory: '/snafu/fnord'
Run Code Online (Sandbox Code Playgroud)
我想用Python的C API获取上面的字符串(即嵌入在C程序中的Python解释器).我需要它作为一个字符串,而不是输出到控制台.
随着PyErr_Fetch()我可以得到异常和值的类型对象.对于上面的示例,值是一个元组:
(2, 'No such file or directory', '/snafu/fnord')
Run Code Online (Sandbox Code Playgroud)
从我获得的信息PyErr_Fetch()到Python解释器显示的字符串有一个简单的方法吗?(不涉及为每个异常类型自己构造这样的字符串.)