【python详细教程】pdb代码调试命令
在pycharm中经常需要代码调试来读懂程序,但是有时使用pycharm界面的调试按钮会遇到程序卡死在某一行而无法继续调试的情况。可以用pdb命令的方法进行调试。
·
文章目录
摘要:在pycharm中经常需要代码调试来读懂程序,但是有时使用pycharm界面的调试按钮会遇到程序卡死在某一行而无法继续调试的情况。可以用pdb命令的方法进行调试。
1. 如何进入调试状态
在终端输入输入python命令时,在后面加上 -m pdb,执行后便进入调试状态。
python -m pdb 脚本名.py
以我的代码为例,执行上面指令后会发现最下面一行以(Pdb)开头,即进入调试状态了。
2. 调试操作
进入调试状态后,可以输入n一行一行的执行代码,也可以通过break命令设置断点位置,然后输入c直接跳到断点处。
下面演示如何打断点进行调试
在上图我们可以看到输入c后,->指向config = vars(parase_args())这一行,表示当前代码执行到该行(但改行还未执行),接着我们输入n即可执行该行。
从下图可以看到执行完config = vars(parase_args())这一行,我又输入p config,出现一大堆参数。这里的p指令即打印参数的意思,将config里面的参数显示出来。

调试期间我们想观察哪一行代码的结果都可以用p指令来显示。
3. 关键指令
上面只是最基础的例子,要想实现更多需求,可以使用其他指令。
关于一些关键的pdb调试指令如下:
| 命令 | 缩写 | 说明 |
|---|---|---|
| break | b | 设置断点 |
| continue | c | 继续执行至下一个断点 |
| next | n | 执行下一行,如果下一行是子程序,不会进入子程序 |
| step | s | 执行下一行,如果下一行是子程序,会进入子程序 |
| p | - | 打印变量或表达式 |
| clear | cl | 清除所有断点 |
| disable | - | 禁用启用的断点 |
| enable | - | 启用禁用的断点 |
| where | bt\w | 打印堆栈轨迹 |
| list | l | 根据参数值打印源码 |
| up | u | 移动到上一堆栈 |
| down | d | 移动到下一堆栈 |
| restart | run | 重新开始调试 |
| args | a | 打印函数参数 |
| return | r | 执行到当前函数结束 |
更多推荐




所有评论(0)