如何在VSCode中用launch.json附加终端启动的Python调试进程?
在VSCode中附加到debugpy启动的Python脚本进行调试
步骤1:配置launch.json
- 打开VSCode并加载你的Python项目文件夹
- 按
Ctrl+Shift+D打开「运行和调试」面板 - 点击「创建launch.json文件」,选择「Python」环境后,选择「远程附加」模板
- 将默认配置替换为以下内容(根据实际路径调整):
{ "version": "0.2.0", "configurations": [ { "name": "Python: 附加到本地debugpy", "type": "python", "request": "attach", "connect": { "host": "localhost", "port": 5678 }, "pathMappings": [ { "localRoot": "${workspaceFolder}", "remoteRoot": "${workspaceFolder}" } ], "justMyCode": true } ] }
port必须和启动脚本时指定的5678保持一致- 如果脚本不在当前工作区,调整
localRoot和remoteRoot为脚本所在的实际目录
步骤2:启动待调试的Python脚本
打开终端,运行命令:
python -m debugpy --listen 5678 ./myscript.py
执行后脚本会暂停,等待调试器连接。
步骤3:启动VSCode调试会话
- 在「运行和调试」面板的配置下拉菜单中,选择你创建的「Python: 附加到本地debugpy」配置
- 点击绿色启动按钮(或按
F5),VSCode会立即连接到debugpy进程,此时可:- 在代码中设置断点
- 使用调试工具栏的继续、单步跳过、单步进入等功能控制执行
- 查看变量、调用栈等调试信息
注意事项
- 确保已安装debugpy:未安装则运行
pip install debugpy - 若脚本在远程服务器上,将
host改为服务器IP,并确保5678端口对外开放 - 调试时出现路径问题,检查
pathMappings的本地与远程路径是否匹配
内容的提问来源于stack exchange,提问作者Arist12
相关产品推荐
相关产品推荐

