Python 调试器 - ipdb
发布时间
阅读量:
阅读量
⚠️注意:该代码采用 ipdb 作为调试工具,在运行时不具备多线程支持。如果存在多个 worker,则需要将 worker 数量设置为 0 即可使用该功能。
ipdb 介绍
说明文档:ipdb
ipdb调试器支持带有语法着色的功能展示,并提供更优的回溯和内省功能体验;其交互界面与pdb模块一致。
使用方法:
安装 ipdb:
pip install ipdb
快速使用:
直接在代码里需要调试的地方,另起一行,写入:
import ipdb; ipdb.set_trace()
就可以选择设置一个断点,并且该程序会被暂停于该位置并进入 ipdb 调试环境
举例:
demo.py 文件为:
a = 5
b = 6
import ipdb; ipdb.set_trace() # 使用 pdb.set_trace() 设置断点,自动暂停
print(a+b)
在终端中:
> python demo.py
> /Users/ruanhao/Documents/code_test/tempCodeRunnerFile.py(4)<module>()
2 b = 6
3 import ipdb; ipdb.set_trace()
----> 4 print(a+b)
ipdb> p a # p 即 print,打印变量 a
5
ipdb> p b # 打印变量 b
6
ipdb> p a+b # 打印 a+b 的结果
11
ipdb> q # q 即 quit,退出 ipdb 调试环境
其他语法
l # list,列出当前执行语句周围11条代码
w # where,打印当前执行堆栈(理解为程序执行的位置)
a # args,列出当前执行函数的参数
n # next,单步执行代码
s # step into 执行下一行(能够进入函数体)
r # return 执行当前运行函数到结束
run # 重新启动 debug,相当于 restart
unt lineno # until, lineno 是代码行号,持续执行直到运行到指定行(或遇到断点)
p expression # print,输出 expression 的值
whatis expression # 打印表达式的类型,常用来打印变量值
q # quit,推出程序
c # continue, 继续运行程序,直到下一个断点(breakpoint)
interact # 启动一个 python 的交互式解释器, 使用 ctrl+d 返回 ipdb
[1] Python 调试器之pdb - 永恒自由森林 - 博客园
[2] splinzer:10分钟教程掌握Python调试器pdb
全部评论 (0)
还没有任何评论哟~
