如何使`help`与argparse中的`--help`一样

时间:2011-09-21 10:43:24

标签: python alias argparse

我希望help选项的行为与--help相同。

旁注:我创建了一个与svn或hg具有相同命令行行为的程序。我设法用subparsers做到了这一点。但是我想让事情保持一致。这就是我希望help能够工作的原因。

2 个答案:

答案 0 :(得分:4)

您可以执行以下操作来创建别名,并使program help行为与program --help

相同
import argparse

def help(args):
    args.parser.print_help()

parser = argparse.ArgumentParser(description='my program')
subparsers = parser.add_subparsers()
p_help = subparsers.add_parser('help')
p_help.set_defaults(func=help, parser=parser)

args = parser.parse_args()
args.func(args)

答案 1 :(得分:0)

在我看来,您希望将help定义为另一个subparser。我天真地说你可以将它链接到print_help()函数,该函数将复制标准--help的输出,但我想知道是否有办法调用本机help()函数。