调试时修改代码后如何从Python代码的任意指定点重新运行?
VS Code及其他IDE调试Python时从报错位置重跑的实现方法
VS Code 操作步骤
- 调试触发报错后,调试器会自动暂停在异常位置,不要终止当前调试会话,直接修复代码中的错误
- 点击调试工具栏的「重启帧(Restart Frame)」按钮,或者右键调用栈面板中的报错栈帧,选择对应「重启帧」选项即可
- 如需自定义快捷键,可在VS Code键盘快捷方式设置中搜索
debug.restartFrame绑定你习惯的按键
注意:如果你的代码修改涉及已经执行完成的全局变量定义、外部模块导入逻辑等上游内容,修改不会自动生效,这种场景下仍需从头启动调试。
其他主流IDE的同类功能实现
- PyCharm:修改完报错代码后,点击调试工具栏的「回退到帧(Drop Frame)」按钮,或右键调用栈中对应报错帧选择该选项,即可从当前帧位置重新运行;开启热重载后轻量代码修改可直接生效无需额外操作。
- Visual Studio:支持「设置下一语句(Set Next Statement)」功能,修改完代码后可以直接把执行指针拖动到报错位置的代码行,或右键对应行选择该选项,即可直接从选中位置开始执行。
- Eclipse(PyDev插件):在调试视图的调用栈窗口,右键需要重启的报错栈帧,选择「丢弃帧(Drop to Frame)」即可从该帧起始位置重新执行。
内容的提问来源于stack exchange,提问作者Akshara Soman
相关产品推荐
相关产品推荐

