基本的例子随处可见;
例外情况为e: print(e)
...I争辩说,当谈到调试时,它只是微不足道,完全没有用。
为了调试,我觉得没有任何理由以这种方式处理异常,因为几乎没有给出任何信息。至少当它发生硬故障时,它会向您提供导致问题的原因的轨迹。
“列表索引超出范围”-是的,谢谢。我知道,这就是为什么我抓到了IndexError!
那么,是否可以返回导致异常的行或任何实际有用的数据呢?或者它只是用来处理已知向量的已知异常?
谢谢!
发布于 2018-08-04 04:40:17
当开发人员想要避免程序崩溃,或者忽略错误或者以特定的方式处理错误时,就会使用try-except
块。
我同意您的观点;打印错误几乎等同于不捕获它。删除try-except块并查看堆栈跟踪将为您提供有关错误的最多信息。
发布于 2018-08-04 04:52:55
对于搜索者,您可以使用traceback库!
import traceback
try:
print(x)
except Exception:
traceback.print_exc()
https://stackoverflow.com/questions/51679765
复制相似问题