【AIGC】基础篇:VS Code 配置 Python 命令行参数调试debug超详细教程

发布于:2025-05-01 ⋅ 阅读:(20) ⋅ 点赞:(0)

前言

在 Python 开发过程中,调试是必不可少的环节。VS Code 提供了强大的调试功能,可以帮助开发者轻松地进行代码调试。今天,就让我们一起学习如何在 VS Code 中配置 Python 的命令行调试,即使是小白也能轻松上手。

一、安装必要的扩展

在开始之前,确保你已经安装了 VS Code 的 Python 扩展和 Python 调试器扩展。这两个扩展是进行 Python 调试的基础。

二、安装 debugpy

在命令行中运行以下命令来安装 debugpy:

python -m pip install --upgrade debugpy

这个命令会将 debugpy 安装到你的 Python 环境中,它是 VS Code 进行 Python 调试的核心工具。

三、创建 launch.json 配置文件

launch.json 文件是 VS Code 调试的核心配置文件,它定义了调试会话的行为。按照以下步骤创建 launch.json 文件:

  1. 打开 VS Code,选择侧边栏的 “运行”视图
  2. 如果你还没有配置文件,会看到一个 “运行和调试” 按钮和一个创建配置文件的链接。
  3. 点击 “创建 launch.json 文件” 链接,或者使用 “运行” > “打开配置” 菜单命令。
  4. 选择 “Python 调试器”,然后在弹出的菜单中选择 “Python 文件”

VS Code 会自动为你生成一个包含基本配置的 launch.json 文件,内容大致如下:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Python: Current File",
      "type": "python",
      "request": "launch",
      "program": "${file}",
      "console": "integratedTerminal"
    }
  ]
}

这个配置表示调试当前打开的 Python 文件,并在 VS Code 的集成终端中运行。

四、配置调试环境

在 launch.json 文件中,你可以根据需要进行一些自定义配置。以下是一些常用的配置选项:

  • name:调试配置的名称,显示在 VS Code 的调试菜单中。
  • type:调试器类型,对于 Python 调试,这里应该是 pythondebugpy
  • request:调试请求类型,launch 表示启动调试,attach 表示附加到已运行的进程。
  • program:要调试的 Python 程序的入口文件路径。
  • console:指定调试时使用的终端类型,integratedTerminal 表示 VS Code 的集成终端。

launch.json 文件中,你可以通过 args 属性添加命令行参数。以下是一个示例配置:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Python: Debug with Args",
      "type": "python",
      "request": "launch",
      "program": "${workspaceFolder}/versions.py",
      "args": [
        "excel",
        "D:\\work\\表250421.xlsx",
        "--column",
        "0",
        "--sheet",
        "Sheet1"
      ],
      "console": "integratedTerminal"
    }
  ]
}

在这个配置中,args 属性用于传递命令行参数

 `python versions.py excel "D:\work\表250421.xlsx" --column 0 --sheet Sheet1`

你可以根据需要修改这些参数。

五、开始调试

完成配置后,就可以开始调试了。点击 VS Code 顶部菜单的 “运行” > “开始调试”,或者直接按下 F5 键。VS Code 会根据 launch.json 文件中的配置启动调试器,并在集成终端中运行你的 Python 程序。
在这里插入图片描述

六、命令行调试

如果你更喜欢在命令行中启动调试,也可以使用以下命令:

python -m debugpy --listen 5678 ./myscript.py

这个命令会启动一个监听端口 5678 的调试服务器。然后,你可以在 VS Code 中使用以下配置连接到调试服务器:

{
  "name": "Python: Attach",
  "type": "debugpy",
  "request": "attach",
  "connect": {
    "host": "localhost",
    "port": 5678
  }
}

七、远程调试

如果你需要调试运行在远程服务器上的 Python 程序,可以通过 SSH 隧道实现远程调试。以下是一个简单的示例:

  1. 在远程服务器上,运行以下命令启动调试服务器:
    python -m debugpy --listen 0.0.0.0:5678 ./myscript.py
    
  2. 在本地机器上,创建一个 SSH 隧道:
    ssh -2 -L 5678:localhost:5678 user@remote-server
    
  3. 在 VS Code 中,使用以下配置连接到远程调试服务器:
    {
      "name": "Python: Remote Attach",
      "type": "debugpy",
      "request": "attach",
      "connect": {
        "host": "localhost",
        "port": 5678
      }
    }
    

八、调试技巧

  • 设置断点:在代码中点击行号旁边的空白区域,可以设置断点。当程序运行到断点时,会自动暂停,你可以查看变量的值、修改变量、单步执行等。
  • 查看变量:在调试过程中,你可以将鼠标悬停在变量上,或者在调试控制台中输入变量名,查看变量的值。
  • 单步执行:使用调试工具栏中的按钮,可以单步执行代码,逐行查看程序的执行过程。

九、常见问题及解决方法

  • 调试器无法连接:确保调试服务器正在运行,并且端口号正确。如果使用 SSH 隧道,检查隧道是否正确建立。
  • 程序无法启动:检查 launch.json 文件中的配置是否正确,特别是 programconsole 的设置。
  • 断点未命中:确保代码与运行的程序一致,并且调试器已正确连接。

网站公告

今日签到

点亮在社区的每一天
去签到