提问人:sab0 提问时间:11/15/2023 更新时间:11/16/2023 访问量:44
VSC Python :launch.json 中的必需参数和可选参数
VSC Python: required and optional args in launch.json
问:
我正在使用 Python 在 Visual Studio Code 中处理一个使用 .有可选参数和必需参数。代码如下所示:main(args)
import sys
import argparse
def main(args):
print(args.mode)
print(args.path)
return 0
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument("--mode", type=str, choices=["opt1","opt2"], default="opt1")
parser.add_argument("path", type=str)
args = parser.parse_args()
sys.exit(main(args))
现在,我想在VSC中调试代码,并为此过程使用文件来加快速度。如何为这两个参数正确设置 launch.json 文件?launch.json
目前我的样子是这样的:launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "something",
"type": "python",
"request": "launch",
"program": "%{file}",
"args": [
"--mode","opt2",
"path","~/some_path",
],
"console": "integratedTerminal"
}
]
}
每次启动调试过程时,我都会收到错误:有人知道我做错了什么吗?error: the following arguments are required: path
感谢您的帮助!
答:
0赞
sab0
11/16/2023
#1
我现在找到了解决方案。所以我在这里犯了 2 个错误:
- 中的陈述是错误的
args
launch.json
- 指定的不会传递给调试器
args
至 1
因为我需要一个可选的参数,例如 AND 必需参数,例如 正确的语法是:--mode
path
launch.json
"args": ["--mode=opt2", "~/path_to_some_folder"],
至 2
为了确保调试器正在使用中指定的启动选项,只需向其添加即可。launch.json
"purpose": ["debug-in-terminal"]
评论
1赞
starball
11/16/2023
“to 2”仅适用于要在终端中调试文件的情况。使用“常规”启动配置时不行
评论
"path"
不是选项使用"--path"