我可以找到的所有示例都会针对NULL指针检查返回值,但在我们的代码中,我们正在接收有效的指针。我们知道发生了异常,因为我们已经在失败的行之前和之后写入了一个日志文件。
当我们查看返回值时,它会显示“NoneType”:returnValue->ob_type->tp_name
。
答案 0 :(得分:2)
在这种情况下,调用返回None对象,而不是NULL,表示就该调用而言没有异常。
如果您使用try:
/ except
处理程序,则该异常已被捕获并清除;这就是这种处理程序的目的。如果您需要异常在堆栈中进一步传播,请重新提升它:
try:
# ...
except SomeException as e:
# log information about `e`
raise