随笔 - 383  文章 - 0  评论 - 0  阅读 - 35557 

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即可

posted on   xieyan0811  阅读(41)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· 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工具
点击右上角即可分享
微信分享提示