1. 命令行使用pdb
(1) 我们先写个简单的python程序a.py如下:
for i in range(0,3):
print(i)
print("@@@@")
print("###")
(2) 用pdb调试
$ pdb a.py # 此后看到 > 提示符,即可以输入命令调试
2. 常用pdb命令
pdb命令和gdb差不多,最常用的命令如下:
(1) 单步调试(进入函数):s(tep)
(2) 单步调试(不进入函数):n(ext)
(3) 继续往后执行,直到下个断点:c(ont(inue))
(4) 运行到函数结束:r(eturn)
(5) 运行到当前循环结束:unt(il)
(6) 设置断点:b(reak) 文件名:行号(或行号,或函数名)
(7) 显示当前调用关系:w(here)
(8) 显示当前代码段:l(ist)
(9) 显示变量:p(rint) 变量名
(10) 显示当前函数的参数:a(rgs)
(11) 显示帮助信息:h(elp)
(12) 退出:q(uit)
3. Notebook使用pdb
(1) 单步调试
用Notebook开发时,常把功能分块写入Cell分别调试,类似单步调试,但有时需要在现有函数内部调试,或者单步运行,此时可以直接在程序中打断点:想在哪儿打断点,就在该处输入:
import pdb; pdb.set_trace()
运行到此处时就出现了pdb的命令行,此时我们可以输入上方的pdb命令单步调试,也可以在输入框中运行python语句。
(2) 程序报错时调出pdb
在程序中加入%pdb即可
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具