具有不同帮助选项的Python Argparse

具有不同帮助选项的Python Argparse,python,argparse,Python,Argparse,我有一个程序,它有一堆带有默认值的参数。大多数人希望使用默认值运行此程序,但少数高级用户希望调整一些其他参数 由于参数太多,帮助屏幕占用的空间超过了整个终端,使得基本用户很难弄清楚自己到底应该做什么。但是,我仍然希望高级选项能够为需要它们的人提供。有没有一种方法可以同时做简短和长篇的--help?例如: $ myprog.py --help (Outputs help with only basic args) 然后 $ myprog.py --help=all (Outputs help w

我有一个程序,它有一堆带有默认值的参数。大多数人希望使用默认值运行此程序,但少数高级用户希望调整一些其他参数

由于参数太多,帮助屏幕占用的空间超过了整个终端,使得基本用户很难弄清楚自己到底应该做什么。但是,我仍然希望高级选项能够为需要它们的人提供。有没有一种方法可以同时做简短和长篇的--help?例如:

$ myprog.py --help
(Outputs help with only basic args)
然后

$ myprog.py --help=all
(Outputs help with all args)

我看不到argparse内置的任何支持。您很可能需要自己构建它。以下是argparse提供的一些工具,可能会有所帮助:

  • ArgumentParser
    有一个
    print\u help()
    方法。当你需要全面帮助时,你可以打这个电话。您还可以覆盖它,为不太高级的用户显示简明的帮助

  • 实现你自己的


  • 查看
    argparse.py
    文件中的
    ArgumentParser.format\u help
    方法。这是设置
    帮助格式化程序的程序。我可以想象写下你自己的变体来显示某些参数组。代码在类和方法方面组织得很好。