代码之家  ›  专栏  ›  技术社区  ›  Eypros

argparse option的缩写形式允许多个字符

  •  1
  • Eypros  · 技术社区  · 6 年前

    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')
    
    0 回复  |  直到 6 年前