Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我能找到的所有示例都根据 NULL 指针检查返回值,但在我们的代码中,我们收到了一个有效指针。我们知道发生了异常,因为我们在失败行之前和之后都写入了日志文件。
当我们查看返回值时,它会显示 "NoneType": returnValue->ob_type->tp_name。
returnValue->ob_type->tp_name
在这种情况下,该调用返回 None 对象,而不是 NULL,表明就该调用而言没有异常。
如果您调用的任何内容都使用了try:/except处理程序,则该异常已被捕获并清除;这就是这种处理程序的目的。如果您需要异常在堆栈中进一步传播,请重新引发它:
try:
except
try: # ... except SomeException as e: # log information about `e` raise