如何进行断点调试

  • 1 添加断点
  • 2 调试断点
  • 3 调试到下一个断点
  • 4 关于断点调试的说明
  • 4.1 step into
  • 4.2 step over
  • 4.3 step out
  • 5 快捷键
  • 6 参考



本文是基于pycharm2019.12的版本撰写的。

1 添加断点

断点的添加方法:在代码的行标前面左键单击即可,如下图所示

注意:被注释了的代码行是添加不了断点的 !!!

gdb python 设置断点 pycharm断点使用_pycharm


gdb python 设置断点 pycharm断点使用_pycharm_02

2 调试断点

两种方法,效果都是一样的:

  1. 点击那个绿色的甲虫图标,开始断点调试,如下图,

gdb python 设置断点 pycharm断点使用_gdb python 设置断点_03

  1. 或者使用右键,选中debug,开始断点调试,如下图,

gdb python 设置断点 pycharm断点使用_gdb python 设置断点_04


开始debug调试后,程序会运行到第一个断点。会显示该断点之前的变量信息(包括变量类型和变量的值)。

方法:找到想要查看的变量,点击右键,可以看到:Add to Watches, View as array。

可以看到,利用add to watches,变量可以被加入到watches窗口,方便查看

更方便的是,可以直接在Variables窗口(或者Watches窗口)找到要查看的变量,右键View as array,可以实现类似于Matlab的数据查看效果。

3 调试到下一个断点

点击Step Over 或者按F8,程序继续往下运行,跳转到到下一个断点,按钮如下图所示:

gdb python 设置断点 pycharm断点使用_gdb python 设置断点_05

4 关于断点调试的说明

4.1 step into

单步执行,遇到子函数就进入并且继续单步执行(简而言之,进入子函数).

4.2 step over

在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完再停止,也就是把子函数整个作为一步。有一点,经过我们简单的调试,在不存在子函数的情况下是和step into效果一样的(简而言之,越过子函数,但子函数会执行)。

4.3 step out

当单步执行到子函数内时,用step out就可以执行完子函数余下部分,并返回到上一层函数。

5 快捷键

按 F5(step into)
按 F7(step out)
按 F6 (step over)