如何在Python Notebook中使用%tb获取完整Traceback?
Jupyter Notebook中
%tb的用法解析 什么是%tb
%tb是IPython内核给Jupyter提供的行魔法命令,不是Python代码,也不是Jupyter的命令行参数,就是Jupyter交互式环境里专属的调试工具,用来调取最近一次异常的完整回溯信息。
怎么用%tb
- 当代码运行后弹出
An exception has occurred, use %tb to see the full traceback.提示时,直接在任意空白代码单元格里输入%tb,运行这个单元格就行。 - 举个实际操作流程:
- 先跑一段会报错的代码:
# 示例报错代码 print(undefined_variable) - 看到提示后,新建个代码单元格,输入:
%tb - 运行这个单元格,就能看到完整的异常调用栈,包括每个出错环节的文件、行号和代码内容。
- 先跑一段会报错的代码:
额外技巧
%tb还支持参数:比如%tb -n 3可以只显示最近3层的回溯信息;%tb full强制输出完整回溯(默认就是完整模式,特殊场景下可用)。- 如果不想每次手动输
%tb,可以用%xmode verbose命令,设置后后续所有异常都会直接显示完整回溯,不用再手动触发。
内容的提问来源于stack exchange,提问作者Better to be sorry than safe
相关产品推荐
相关产品推荐

