debugpy 是 Python 调试器,支持本地调试(VS Code 直接运行)和远程调试(附加到远程进程/容器)。
本地调试
配置 launch.json
.vscode/launch.json:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| {
"version": "0.2.0",
"configurations": [
{
"name": "Python: 当前文件",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal",
"justMyCode": true,
"env": {"PYTHONUNBUFFERED": "1"}
}
]
}
|
调试操作
- 打开 Python 文件
- 点击行号添加断点(红色圆点)
- 按 F5 启动调试
- 工具栏:继续(F5)、单步跳过(F10)、单步进入(F11)、停止(Shift+F5)
远程调试
被调试端启动服务
1
2
3
4
5
| import debugpy
debugpy.listen(("0.0.0.0", 5678))
print("等待调试器附加...")
debugpy.wait_for_client()
# 业务代码
|
VS Code 配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| {
"name": "Python: 远程附加",
"type": "python",
"request": "attach",
"connect": {
"host": "192.168.1.100",
"port": 5678
},
"pathMappings": [
{
"localRoot": "${workspaceFolder}",
"remoteRoot": "/opt/project"
}
]
}
|
常用配置
| 配置项 | 作用 |
|---|
${file} | 当前文件路径 |
${workspaceFolder} | 项目根目录 |
args | 脚本参数 |
env | 环境变量 |
cwd | 工作目录 |
pathMappings | 远程路径映射 |
故障排除
断点灰色(未命中):检查 program 或 pathMappings 配置。
Comments