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

相关推荐
棒棒糖的糖不含糖1 小时前
idea生成类信息及快捷开发配置
ide
计算机学姐1 小时前
基于PHP的电脑线上销售系统
开发语言·vscode·后端·mysql·编辑器·php·phpstorm
JANGHIGH2 小时前
VSCode值得推荐的插件(持续更新中)
ide·vscode·编辑器
小O_好好学5 小时前
vi | vim基本使用
linux·编辑器·vim
cliffordl6 小时前
vscode 环境搭建
ide·vscode·编辑器
JANGHIGH6 小时前
VSCode引用Eigen库无法识别问题解决
ide·vscode·编辑器
我就是全世界8 小时前
开源集成开发环境搭建之VSCode启动Jupyter Notebook
ide·vscode·jupyter
科研小白_d.s18 小时前
vscode配置c/c++环境
c语言·c++·vscode
程序猿进阶1 天前
如何在 Visual Studio Code 中反编译具有正确行号的 Java 类?
java·ide·vscode·算法·面试·职场和发展·架构