首页 > 解决方案 > 为什么 ArgumentParser add_argument 不接受这个论点?

问题描述

我在班级顶部有以下代码:

ap = argparse.ArgumentParser()
ap.add_argument("-i", "--image", required=True,
                help="path to input image")
ap.add_argument("-m", "--method", required=False, default="CAFFE",
                help="Method")
args = vars(ap.parse_args())

input_image_path = args["image"]
detection_method = args["method"]

当我尝试使用这些参数运行时,出现此处显示的错误:

python FaceRecognition.py -i images//test_image.jpg -m "CAFFE"
usage: FaceRecognition.py [-h] [-m METHOD]
FaceRecognition.py: error: unrecognized arguments: -i images//test_image.jpg

为什么它不能识别 -i 参数?

我已经尝试过添加引号、更改参数的顺序、删除另一个参数。

我试着运行这个:

python FaceRecognition.py -m "CAFFE"
usage: FaceRecognition.py [-h] -i IMAGE [-m METHOD]
FaceRecognition.py: error: the following arguments are required: -i/--image

为什么它只在我不包含它时才识别它?

标签: pythonargparse

解决方案


推荐阅读