argparse的段落保持格式化程序
argparse-formatter的Python项目详细描述
Argparse段落格式化程序
这个项目是一个简单的Python模块,它提供 argparse格式化程序 这在帮助和尾声文本的显示方面支持更大的灵活性。在
背景
默认情况下,argparse将折叠并转换所有空格序列 在一个空格中,然后将文本换行到适当的行长度。 这将导致所有文本转换为一个单独的段落。在
有可选的RawDescriptionHelpFormatter和 RawTextHelpFormatter类,这些类可以用于保留段落,但是 它们不执行任何换行操作。所需要的是 支持更大的灵活性,同时仍提供换行。在
段落编排器
此模块提供ParagraphFormatter类。如果这个班通过了 到argparse.ArgumentParser创建调用作为formatter_类 参数,然后是帮助和尾声段落,用空白行分隔, 将被保存。将在段落内进行换行。在
注意,ParagraphFormatter是通过重写两个private来实现的 方法在默认的argparse格式化程序中,以及 类不被认为是argparseAPI的一部分。因此有一个 在未来的标准库版本中,代码可能会中断的风险很小。这个 模块已经在所有支持的python3版本上进行了测试。在
FlexiFormatter公司
事实证明,ParagraphFormatter是rich的更原始版本 已long proposed的格式化程序 包含在Python中。在
此模块提供flexformatter类,并进行了一些修改。 这个格式化程序保留换行符和缩进,并理解bullet 列表。在
合并此格式化程序会很好—它消除了 API迁移风险。在
演示
剧本 demo.py 演示使用ParagraphFormatter的效果:
# ./demo.py
*************************
Using the Default formatter
*************************
usage: demo.py [-h] [--arg ARG]
optional arguments:
-h, --help show this help message and exit
--arg ARG This same feature would be useful for arguments that would
benefit from more explanation. Wouldn't it?
This is a multi-paragraph epilog. It is presenting data that would benefit by
being visually broken up into pieces. It sure would be nice if it was
represented that way.
*************************
Using the Paragraph formatter
*************************
usage: demo.py [-h] [--arg ARG]
optional arguments:
-h, --help show this help message and exit
--arg ARG This same feature would be useful for arguments that would
benefit from more explanation.
Wouldn't it?
This is a multi-paragraph epilog. It is presenting data that would benefit by
being visually broken up into pieces.
It sure would be nice if it was represented that way.
flexidemo.py 脚本显示flexformatter的输出
^{pr2}$安装
从PyPi安装:
pip install argparse-formatter
- 项目
标签: