VS Code 配置 Python 调试器 launch.json 参数怎么填

文章导读
大多数情况下,你只需要让 VS Code 自动生成基础配置,再根据是否需要传参或切换解释器微调 program 和 console 字段即可。
📋 目录
  1. 基础配置示例
  2. 常用参数详解
  3. 复杂场景配置案例
  4. 验证与排查
  5. 常见坑
A A

大多数情况下,你只需要让 VS Code 自动生成基础配置,再根据是否需要传参或切换解释器微调 program 和 console 字段即可。

先说结论:launch.json 的核心是指定调试器类型、启动方式和入口文件,新手建议直接使用扩展自动生成的配置模板,再按需修改路径。

  • 适合:需要在 VS Code 内断点调试 Python 脚本或模块的场景
  • 先准备:确保已安装 Python 扩展并选中了正确的解释器
  • 验收:按下 F5 后能停在断点处且变量面板有数据

基础配置示例

如果你不想手动敲配置,可以直接在项目根目录创建 .vscode/launch.json,填入以下最小可用配置:

VS Code 配置 Python 调试器 launch.json 参数怎么填
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: 当前文件",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal"
        }
    ]
}

保存后按 F5 即可尝试调试当前打开的文件。

常用参数详解

理解关键参数的含义和可选值,能避免大部分配置错误:

VS Code 配置 Python 调试器 launch.json 参数怎么填
  • type:固定为 python,指定使用 Python 调试适配器。
  • request:区分启动方式。launch 表示启动新进程调试,attach 表示附加到已运行的进程。
  • program:指定入口文件。常用变量:${file}(当前文件)、${workspaceFolder}/main.py(固定文件)。
  • console:指定输出终端。
    • internalConsole:VS Code 内部调试控制台,不支持 input 输入。
    • integratedTerminal:VS Code 集成终端,支持交互输入,推荐默认使用。
    • externalTerminal:外部系统终端窗口。
  • args:命令行参数列表。格式为字符串数组,例如 ["`--param1`", "value1"],注意不要包含多余符号。
  • env:环境变量配置,格式为键值对对象,例如 {"KEY": "VALUE"}
  • cwd:当前工作目录。涉及相对路径读取文件时,建议显式设置为 ${workspaceFolder}
  • justMyCode:默认为 true,只调试用户代码。若需在第三方库中断点,设为 false
  • debugOptions:高级调试选项。例如添加 ["DebugStdLib"] 可调试标准库代码。

复杂场景配置案例

针对需要传参或调试模块的场景,参考以下配置:

VS Code 配置 Python 调试器 launch.json 参数怎么填
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: 带参数调试",
            "type": "python",
            "request": "launch",
            "program": "${workspaceFolder}/main.py",
            "console": "integratedTerminal",
            "args": ["`--config`", "dev.json", "`--verbose`"],
            "cwd": "${workspaceFolder}"
        },
        {
            "name": "Python: 调试模块",
            "type": "python",
            "request": "launch",
            "module": "package_name.module_name",
            "console": "integratedTerminal"
        }
    ]
}

验证与排查

在代码行号左侧点击设置红点断点,按下 F5 启动调试。如果编辑器暂停在高亮行,且底部调试工具栏出现,说明配置生效。观察变量面板是否能查看到当前作用域的变量值,这是判断调试器正常工作的最直接标准。

若无法启动,检查底部“调试控制台”输出的错误信息,常见为路径错误或解释器不可用。

常见坑

  • 解释器不匹配:确保右下角状态栏选择的 Python 解释器是你项目依赖所在的环境,否则调试时可能找不到包。
  • 终端交互失败:如果脚本需要 input 输入,console 必须设为 integratedTerminal 或 externalTerminal,internalConsole 不支持交互输入。
  • 路径解析错误:避免硬编码绝对路径,多使用 ${workspaceFolder} 等变量,确保配置在不同机器间可移植。
  • 第三方库断点无效:默认 justMyCode 为 true,若需调试库代码,需显式关闭该选项。