作者热门文章
- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我正在使用 argparse接受命令行输入并生成帮助文本。我想使用 ArgumentDefaultsHelpFormatter
作为 formatter_class
,但是这会阻止我也使用 RawDescriptionHelpFormatter
这将允许我添加自定义格式到我的描述或结语。
除了自己编写代码来为默认值生成文本之外,是否还有一种明智的方法来实现这一点?根据 argparse 文档,ArgumentParser
的所有内部结构都被视为实现细节,而不是公共(public) API,因此子类化不是一个有吸引力的选择。
最佳答案
我刚刚尝试了一种多重继承方法,它确实有效:
class CustomFormatter(argparse.ArgumentDefaultsHelpFormatter, argparse.RawDescriptionHelpFormatter):
pass
parser = argparse.ArgumentParser(description='test\ntest\ntest.',
epilog='test\ntest\ntest.',
formatter_class=CustomFormatter)
如果这些类的内部结构发生变化,这可能会中断。
关于python - ArgumentParser 结语和描述格式与 ArgumentDefaultsHelpFormatter 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18462610/
我是一名优秀的程序员,十分优秀!