7. Pycharm断点调试

408 阅读1分钟

debug面板

图片.png

左侧从上到下:

return:重新debug。

resume program:跳转到下一个断点处。

stop:停止运行程序。

view breakpoints:查看所有的断点。

mute breakpoints:取消断点。

上侧从左到右:

show execution point:回到当前执行的栈顶方法。

step over:如果这个语句没有函数这个语句中的函数内部没有断点,则不进入该语句执行到下一句(该语句中的函数会运行只是不进去看);否则会进入到该语句中的函数内部第一个断点处。

step into:单步执行语句,遇到函数(无论是自己写的函数还是库函数)则会进入。

step into my code:单步执行语句,遇到自己的函数则会进入,库函数则不会进入。

step out:跳出栈顶的方法。可以看到左侧列表为方法栈,先进的方法在栈底,后进的方法在栈顶,跳出则跳出栈顶的方法。注:step out每次返回到前一层,都是必须先把当前层所有代码运行完。

run to curor:跳转到下一个断点处。

案例一

我想知道A模块运行时何时会调用B模块中的C方法。

答:

将B模块中C方法打断点,然后在A模块中,以step over调试。

案例二

我想让A模块中的B循环方法运行一次后跳到循环结束的语句。

答:

循环开始和循环结束后的语句打断点,用step over/step into循环一次回到循环开始的地方时,用run to curor/step out运行完,跳转。 注:不要在循环内打断点。