PyCharm调试时如何单步跳过最后一行代码查看变量值
PyCharm调试代码最后一行时程序直接退出的解决方法
在PyCharm调试流程中,若断点设置在代码最后一行,断点触发时该行代码尚未执行,无法查看该行生成的变量值;此时执行单步跳过操作,程序会直接运行结束退出,无法停在代码执行完成的状态。
最简复现代码如下:
x = 5 y = 7 z = x * y # 断点打在这行时,z还未完成赋值
在代码末尾加pass占位行再打断点的方案虽然可用,但会侵入原有代码,不够简洁,以下是无代码侵入的更优方案:
- 使用「运行到光标处」功能替代单步跳过:无需修改原有代码,断点触发在最后一行时,保持光标停在当前最后一行位置,触发「运行到光标处」功能(默认快捷键Windows/Linux为
Alt+F9,macOS为Option+F9),PyCharm会执行完当前光标所在行后自动挂起,此时直接在调试变量面板就能看到z的计算结果,无需跳转到下一行。 - 借助表达式求值功能直接获取结果:断点命中最后一行时,无需执行该行代码,选中
x * y表达式,按快捷键Alt+F8调出求值面板,即可直接看到计算结果,也可手动输入目标表达式即时求值。 - 配置断点自动记录目标变量值:右键点击最后一行的断点,取消勾选「挂起」选项,在「评估并记录」输入框填入要查看的变量名
z,调试运行到该行时,会自动执行完对应代码、把z的值打印到调试控制台,无需手动挂起程序。 - 开启调试会话终止后保留状态开关:打开PyCharm设置,进入「构建、执行、部署 > 调试器 > 单步」配置页,勾选「程序终止后保持调试会话运行以检查最终状态」,后续即使单步操作触发程序执行到末尾,调试器也不会立刻关闭会话,依然可以在变量面板查看所有执行完成后的变量值。
内容的提问来源于stack exchange,提问作者koegl
相关产品推荐
相关产品推荐

