在从终端运行脚本时,怎么启动VS Code的调试器(Python)?

编程语言 2026-07-10

通常调试时,我只是在VS Code界面的右上角放置断点并点击调试。

但很多时候,我需要从终端运行脚本。我基本上想要能够进入调试模式(调用VS Code的 Python调试器),即使我从终端运行脚本(比如说 python /scripts/test.py)。我想让它在我在VS Code界面中附加的断点处停止。

解决方案

正如jonrsharpe已经提到的那样,你可以在终端启动Python脚本,然后使用debugpy附加VS Code的调试器。

基本上,当你从终端启动脚本时,它是在普通的Python解释器下运行,而不是在VS Code的调试器下,因此你在VS Code设置的断点不会被命中。

然而,你可以用debugpy从 VS Code附加调试器。实质上你需要:

  • 下载debugpy;你可以从终端执行:
python -m pip install --upgrade debugpy
  • 用debugpy启动终端中的脚本(以端口5678和 myscript.py为例)
python -m debugpy --listen 5678 --wait-for-client ./myscript.py
  • 在VS Code中创建一个Attach配置。在你的.vscode/launch.json中,添加:
{
  "name": "Python Debugger: Attach",
  "type": "debugpy",
  "request": "attach",
  "connect": {
    "host": "localhost",
    "port": 5678
  }
}
  • 最后附加调试器。这意味着:

  • 在终端启动脚本

  • 打开VS Code
  • 转到Run and Debug
  • 选择Python: Attach
  • 点击Start Debugging

此时,你在VS Code的断点应该就能工作了。

站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。

相关文章