You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS Code交互式模式下Python断点调试及相关问题咨询

问题解答

为什么断点未触发?

使用SHIFT+ENTER执行单元格属于常规运行模式,不会启动调试器。断点仅在调试模式下生效,因此直接执行时会跳过断点,直接抛出ZeroDivisionError异常。

保留现有变量并激活调试器的方法

要保留当前会话中的变量(如t)并触发断点,需在现有内核会话中启动调试模式,具体步骤如下:

  • 确保当前Jupyter内核处于运行状态(不要重启内核,否则t等变量会丢失)。
  • 选择以下任一方式运行代码:
    1. 使用单元格的调试按钮:在目标单元格左侧找到「调试单元格」图标(虫子形状),点击它运行单元格。这会在现有内核中以调试模式执行代码,自动触发断点。
    2. 启动调试会话后执行:打开VS Code左侧的调试面板,选择「Jupyter」调试环境并启动会话。之后按SHIFT+ENTER执行单元格,调试器会自动命中断点。
    3. 附加到运行中的内核:通过CTRL+SHIFT+P执行Jupyter: Attach to Running Kernel命令,将调试器附加到当前活跃的内核,再重新运行目标单元格即可触发断点。

跳转到interactiveshell.py是否正常?

这是正常现象。Jupyter调试器需要与IPython内核的执行逻辑对接,启动调试时会先进入内核的内部代码(如interactiveshell.py)。你可以:

  • 按F5(继续):调试器会直接跳转到你设置的断点处。
  • 按F11(单步进入):逐步跳过内核代码,最终进入你的myfunc函数。

内容的提问来源于stack exchange,提问作者BinaryMonkey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 20:22:28