【问题标题】:Arg parser error :args = vars(ap.parse_args()) exception occured : pythonArg 解析器错误:args = vars(ap.parse_args()) 发生异常:python
【发布时间】:2022-01-03 18:00:44
【问题描述】:
ap = argparse.ArgumentParser()
ap.add_argument("-i", "--image", required=True,
help="path to input image")
ap.add_argument("-d", "--dataset", required=True,
help="path to dataset")
ap.add_argument("-m", "--model", required=True,
help="path to Caffe pre-trained model")
ap.add_argument("-l", "--labels", required=True,
help="path to ImageNet labels (i.e., syn-sets)")
args = vars(ap.parse_args())

我得到的输出是

usage: train.py [-h] -i IMAGE -d DATASET -m MODEL -l LABELS
    ipykernel_launcher.py: error: the following arguments are required: -i/--image, -p/--prototxt, -m/--model, -l/--labels.
 An exception has occurred, use %tb to see the full traceback.
 System Exit: 2

【问题讨论】:

  • 错误表明-p/--prototxt 是必需的参数,但它没有出现在您的代码中。您确定您正在运行脚本的更新版本吗?
  • 根据错误信息,this question 似乎相关。
  • 错误消息告诉我们您正在 jupyter notebook 中运行它。在那种环境中为脚本提供命令行参数并不容易,即使您知道这意味着什么。像这样的脚本应该从 OS shell 运行。

标签: python argparse


【解决方案1】:

您遇到此错误是因为您在运行脚本时未传递您定义的必需参数。 如果您像这样运行脚本,则不会出现错误:

script_name.py -i image_path -d data_path -m model_path -l label_path

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-07-06
    • 1970-01-01
    • 2019-01-27
    • 1970-01-01
    • 1970-01-01
    • 2021-07-18
    • 1970-01-01
    • 2021-08-26
    相关资源
    最近更新 更多