vscode 如何debug(二)

在 Python 项目中配置 VS Code 进行远程调试是一个常见的需求。以下是详细的步骤,确保你可以顺利配置并进行调试:

1. 安装 DebugPy

首先,通过 pip 安装 debugpy:

bash 复制代码
pip install debugpy -U

2. 安装 VS Code 插件

确保你已经在 VS Code 中安装了 Python 插件。你可以在 VS Code 的扩展市场中搜索 Python 并安装。

3. 配置 Python 代码

在你的 Python 脚本的最前面加入以下代码,以便在运行时能够启动 debugpy:

python 复制代码
import debugpy
try:
    # 9501 是默认的附加端口。除非指定主机和端口,否则主机默认为 127.0.0.1
    debugpy.listen(("localhost", 9501))
    print("Waiting for debugger attach")
    debugpy.wait_for_client()
except Exception as e:
    pass

4. 配置 VS Code

在你的 VS Code 项目中,找到 .vscode 文件夹,并在其中的 launch.json 文件中添加以下配置:

json 复制代码
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "sh_file_debug",
            "type": "python",
            "request": "attach",
            "connect": {
                "host": "localhost",
                "port": 9501
            }
        }
    ]
}

5. 启动脚本

假设你使用 sh xxxx.sh 启动你的脚本,请确保在你的 shell 脚本或直接在 Python 代码中包含上述调试代码。

示例

假设你的 shell 脚本 run_script.sh 内容如下:

bash 复制代码
#!/bin/bash
python your_script.py

确保你的 your_script.py 包含了上述调试代码部分。

6. 调试步骤

  1. 在 VS Code 中打开你的项目。
  2. 确保 launch.json 配置正确。
  3. 启动你的 shell 脚本,例如 sh run_script.sh
  4. 在 VS Code 中按 F5 或点击调试按钮,选择 sh_file_debug 配置。
  5. 此时,VS Code 会尝试附加到正在运行的 Python 脚本,你应该会看到 Waiting for debugger attach 信息。VS Code 连接后,你可以设置断点并进行调试。

注意事项

  • 确保你的防火墙没有阻止所使用的端口(9501)。
  • 如果在远程服务器上进行调试,确保服务器的网络配置允许你的本地机器进行连接。
  • 端口号需要保持一致,确保 debugpy.listenlaunch.json 中配置的端口号一致。

通过以上步骤,你应该能够成功在 VS Code 中调试你的 Python 脚本。如果有任何问题,检查端口号和网络连接是最常见的排查步骤。

参考大佬
https://github.com/yuanzhoulvpi2017/vscode_debug_transformers

b站
https://www.bilibili.com/video/BV1wt421V718/?spm_id_from=333.337.search-card.all.click&vd_source=56259c6f4341f35bc11096ddb89e0588

相关推荐
我要见SA姐14 小时前
DeepSeek Harness 开源贡献手记:从 Issue 到 Merge 的完整旅程
ide·vscode·python·自动化·编辑器
ndsc_d5 小时前
VS Code 接入 Pixso MCP 实战:配置、安装 AI Skill 与设计稿转代码
vscode·ai·设计·pixso·skill·mcp·设计稿转代码
千里马学框架6 小时前
Android 17 成功编译运行差异部分更新
vscode·开发工具·车载开发·aosp源码·安卓17·aosp17·编译源码
2501_9159184111 小时前
使用 VS Code 写 Swift 做 iOS 开发,插件能实现哪些功能,还有哪些短板
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
威嵌神州11 小时前
天脉 3 开发环境与 BSP 适配:IDE license、驱动开发、飞腾平台
ide·驱动开发·嵌入式硬件·fpga开发
东小黑12 小时前
Git 仓库操作与 VSCode 使用指南
git·vscode·gitee
我要见SA姐11 天前
用 Claude Code 重构遗留系统:从评估到落地的完整实践指南
数据库·ide·vscode·oracle·编辑器
00后程序员张1 天前
Xcode vs KXApp,体积差几十G,选轻量方案还是完整工具链?
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
解道Jdon1 天前
JDK 27发布:紧凑对象头、G1默认、量子安全TLS
ide·windows·git·svn·eclipse·github·visual studio
别动我齐刘海1 天前
ROS2 Jazzy + C++ 实战路线——基础学习1
c++·vscode·python·ubuntu·机器学习·自动驾驶·github