在argparse中,我希望可选参数出现在optional arguments:
下的帮助列表中,但不会出现在用法文本中。我可以在参数中使用help=argparse.SUPPRESS
将其从使用中删除,但这会产生从帮助文本中的参数描述中删除它的副作用。
是否可能 - 如果是,如何 - 仅在使用中抑制参数。
此外,我如何在使用中用统一的[--args]
指标替换所有可选参数。
答案 0 :(得分:0)
如果未指定用法消息,则会根据参数自动生成消息。如果您不喜欢自动生成的用法字符串,可以在创建解析器时自行覆盖它:
parser = ArgumentParser(usage='my usage str')
您无法自定义自动生成的用法消息以仅抑制可选参数,这是一种使用它或者丢失它的东西。如果您想重新使用自定义使用情况生成器的代码,最好的方法是继承HelpFormatter
并覆盖_format_usage
方法。