我在检查这个python file时似乎使用了一个带有2个字符的简短参数。
parser.add_argument(
'-gt',
'--gtfolder',
dest='gtFolder',
metavar='',
help='folder containing your ground truth bounding boxes')
我认为简短的争论只包含一个字符,这让我感到惊讶。实际上,在文档中它声明了 short options (options only one character long)... 。
另一方面,代码似乎可以正常工作(至少在argparse
选项方面如此)。
我检查了代码,如果使用了简短格式,它将得到正确的参数。
python3 pascalvoc.py -gt 'path/somewhere'
我注意到的唯一故障是代码的串联版本不起作用:
python3 pascalvoc.py -gt'path/somewhere'
...错误:无法识别的参数:-gtpath / somewhere
所以,我的问题是,为什么首先允许使用超过1个字符的短选项。如果不是级联版本,这可能会被忽略。另外,除了短格式中必须有一个连字符减号外,这似乎绕开了短于短于长的简单规则。从这个意义上讲,这是有功能的(当然,如果应用了未连接的选项):
parser.add_argument(
'-gt-not-short-at-all-argument',
'--gtfolder',
dest='gtFolder',
metavar='',
help='folder containing your ground truth bounding boxes')