当前位置:   article > 正文

【深度学习环境】VSCode 调试python 带args参数的程序_vscode args

vscode args

调试参数

参考: VS Code 官方教程

1. 初始化配置参数

在调试过程中,配置项 驱动VSCode 的行为。配置项被定义在 项目的**.vscode/launch.json**中。 第一次运行可以如下配置:
在这里插入图片描述
在这里插入图片描述

2. 配置参数

参考这个大佬的: launch.json vscode 调试带参数程序,指定GPU, 指定python解释器,封装包里面打断点

{
    "version": "0.2.0",
    "configurations": [
        {
            "python": "/home/zdliu/anaconda3/envs/py37/bin/python3",  # 指定python解释器
            "name": "Python: train",
            "type": "python",
            "request": "launch",
            "program": "/home/axjia/train.py",
            "cwd": "tools", # 用于指定脚本所在目录,比如有的脚本需要先 cd 到 xxx 再运行。
            "console": "integratedTerminal",
            "env": {"CUDA_VISIBLE_DEVICES":"0,1"},   # 指定显卡
            "args": ["--train_dir", "./input/train_data",   # 命令行参数
                "--dev_dir", "./input/valid_data",
 
            ],
            "justMyCode": false   # 调试封装包里面的代码,可以在里面打断点
        }
    ]
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

具体解释如下:

参数配置

在这个配置参数里,可以同时存在多组配置参数, 用于完成不同的调试任务。这里我们要调试

 python ./tools/train.py --model patchcore 
  • 1

我们可以直接在最后一行即可:

 "args": ["--model", "patchcore"]
  • 1
 {
     "name": "Train_patchcore",
     "type": "python",
     "request": "launch",
     "program": "${workspaceFolder}/tools/train.py",
     "console": "integratedTerminal",
     "justMyCode": true,
     "args": ["--model", "patchcore"]
 }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

设置启动路径

需求

cd model/
python train.py -d <dataset> -g <gpu_id>
  • 1
  • 2

假如我们需要先cd 到model 再运行训练命令,这时候我们可以设置 cwd 的值

cwd 是 “current working directory” 的缩写,表示当前工作目录。在上下文中,这是指程序运行时的基准目录,即在哪个目录下运行命令或脚本。在 launch.json 文件的配置中,cwd 用于指定调试器应该在哪个目录下执行程序。

在上述的 launch.json 配置中:

"cwd": "${workspaceFolder}/model",
  • 1

这里的 "${workspaceFolder}/model" 意味着调试器将使用 model 文件夹作为当前工作目录。这是有用的,因为有些程序可能需要在特定的目录中执行,以便正确找到文件或依赖项。

在你的特定情境中,cwd 被设置为 ${workspaceFolder}/model,这意味着你的 train.py 脚本将在 model 文件夹中执行。确保根据你的实际项目结构进行适当的配置。

指定python 解释器

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/一键难忘520/article/detail/770927
推荐阅读
相关标签
  

闽ICP备14008679号