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