我正在使用argparse接受命令行输入并生成帮助文本.我想用ArgumentDefaultsHelpFormatter的formatter_class,但是这防止我也用 RawDescriptionHelpFormatter这将让我的自定义格式添加到我的描述或收尾.
除了自己编写代码以生成默认值的文本之外,还有一种明智的方法可以实现这一目的吗?根据argparse文档,所有内部ArgumentParser都被认为是实现细节,而不是公共API,因此子类化不是一个有吸引力的选择.
Spy*_*cho 38
我只是尝试了一种多继承方法,它的工作原理如下:
class CustomFormatter(argparse.ArgumentDefaultsHelpFormatter, argparse.RawDescriptionHelpFormatter):
pass
parser = argparse.ArgumentParser(description='test\ntest\ntest.',
epilog='test\ntest\ntest.',
formatter_class=CustomFormatter)
Run Code Online (Sandbox Code Playgroud)
如果这些类的内部改变,这可能会破坏.
| 归档时间: |
|
| 查看次数: |
3528 次 |
| 最近记录: |