python 程序无法从 VSCode 的 launch.json 获取参数?

python program can not get the args from the launch.json of VSCode?

当我用 "args": [ "-s", "0","-g", "0",] 设置 launch.json 时,我没有在 python 程序中得到我想要的值。

# python file
import argparse
parser = argparse.ArgumentParser()
parser.add_argument(
    '-s', '--seed',
    type=int,
    help = 'Random generator seed.',
    default=1,
)
parser.add_argument(
    '-g', '--gpu',
    type=int,
    help='CUDA GPU id (-1 for CPU).',
    default=-1,
)

args = parser.parse_args()
print(args)
print(args.seed)
print(args.gpu)
# launch.json
{
    "version": "0.2.0",
    "configurations": [

        {
            "name": "Python: 当前文件",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "justMyCode": true,
            "args": [
                "-s", "0",
                "-g", "0",
            ]
        }
    ]
}

这是终端的输出。

Namespace(seed=1, gpu=-1)
1
-1

现在我能做的就是修改 python 中的默认值 program.But 为什么我不能从 launch.json 传递参数?我该如何解决这个问题?

如图所示, 您应该点击“运行和调试”页面(左侧)中的“运行”按钮,而不是点击页面右上角的运行按钮。enter image description here