在Jupyter notebook中调试python程序
Jupyter notebook简洁易用,已成为数据分析、机器学习领域的宠儿。如果大家在运行程序的过程中,出现了bug,免不了需要进行调试。在IDE(集成开发环境)中调试和在Jupyter notebook中调试还是有区别的。今天我们来学习下如何在Jupyter notebook中调试程序。
jupyter的调试是通过python自带的pdb库来实现的。分为如下几个步骤(图片可点击放大查看):
1)首先需要import pdb
2)然后在import后写入语句pdb.set_trace()
3)下面以一段简单的代码为例展示几个功能:
打开jupyter的home页面新建一个文件输入以下语句
import pdb
pdb.set_trace()
def sum(a,b):
c=a+b
return c
a=1
b=2
c=sum(a,b)
print(c)
4)按cntrl+enter运行
进入到如下界面:
5)然后在此处输入一系列调试命令,下面先展示所有的命令:
完整命令 | 简写命令 | 描述 |
---|---|---|
args | a | 打印当前函数的参数 |
break | b | 设置断点 |
clear | cl | 清除断点 |
condition | 无 | 设置条件断点 |
continue | c或者cont | 继续运行,知道遇到断点或者脚本结束 |
disable | 无 | 禁用断点 |
enable | 无 | 启用断点 |
help | h | 查看pdb帮助 |
ignore | 无 | 忽略断点 |
jump | j | 跳转到指定行数运行 |
list | l | 列出脚本清单 |
next | n | 执行下条语句,遇到函数不进入其内部 |
p | p | 打印变量值,也可以用print |
quit | q | 退出 pdb |
return | r | 一直运行到函数返回 |
tbreak | 无 | 设置临时断点,断点只中断一次 |
step | s | 执行下一条语句,遇到函数进入其内部 |
where | w | 查看所在的位置 |
! | 无 | 在pdb中执行语句 |