繁体   English   中英

使Python的argparse接受单字符缩写为subparsers?

[英]Make Python's argparse accept single-character abbreviations for subparsers?

我正在使用argparse优秀的subparser系统来创建一个接受许多不同命令的命令行程序。 从我读到的内容来看,当argparse明确无误时,它会自动接受参数的单字符缩写。 我想让它为subparsers做同样的事情。 如果我像这样设置我的subparser:

    foo_parser = subparsers.add_parser('foo')
    # ... set up arguments and handler ...

    bar_parser = subparsers.add_parser('bar')
    # ... set up arguments and handler ...

然后我希望解析器接受myprogram f arg0作为myprogram foo arg0的明确缩写。 但事实并非如此。

有任何想法吗?

从argparse文档来看,它不支持subparser的这种自动缩写,但是你可以显式设置这样的别名:

foo_parser = subparsers.add_parser('foo', aliases=['f'])

另一方面, 支持参数缩写。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM