使用 python 的 optparse 时在帮助消息中显示换行符

2024-01-07

我正在使用 optparse 模块进行选项/参数解析。出于向后兼容性的原因,我无法使用 argparse 模块。如何格式化我的 Epilog 消息以便保留换行符?

在下面的示例中,我希望按格式打印尾声。

    epi = \
"""
Examples usages:
  Do something
  %prog -a -b foo
  Do something else
  %prog -d -f -h bar
"""
    parser = optparse.OptionParser(epilog=epi)

请参阅第一个答案:

python optparse,如何在使用输出中包含附加信息? https://stackoverflow.com/questions/1857346/python-optparse-how-to-include-additional-info-in-usage-output

基本答案是子类化 OptionParser

class MyParser(optparse.OptionParser):
    def format_epilog(self, formatter):
        return self.epilog
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 python 的 optparse 时在帮助消息中显示换行符 的相关文章

随机推荐

  • 如何查找Android设备的序列号?

    我需要为 Android 应用程序使用唯一的 ID 并且我认为设备的序列号是一个不错的选择 如何在我的应用程序中检索 Android 设备的序列号 TelephonyManager tManager TelephonyManager myA
  • 如何在 QML 中设置 MessageDialog 的默认按钮?

    默认按钮是 是 但我想将按钮 否 设置为默认按钮 怎么做 我看不到任何方法可以通过当前的方式实现这一目标MessageDialogAPI 但我也认为这是特定于平台的 这就是它被隐藏的原因 不过 您可以创建自己的对话框 import QtQu
  • 通过定时器写入数据库的后台任务

    如何在后台的计时器上写入数据库 例如 检查邮件并向数据库添加新信件 在示例中 我在写入数据库之前简化了代码 Microsoft 示例中的类名称 录音类本身 namespace EmailNews Services internal inte
  • Camunda 无法执行 groovy 脚本

    这是我的依赖项 compile group org camunda bpm springboot name camunda bpm spring boot starter webapp version 3 0 0 compile group
  • 文件浏览器java

    我希望在 Java 应用程序中拥有某种文件浏览器 例如 Windows 资源管理器 我只想要能够递归列出文件夹内文件的东西 有没有一种简单的方法可以做到这一点 我已经尝试使用 JFileChooser 但这不是我想要的 此代码片段允许您递归
  • TextView android:ellipsize="marquee" 未按预期工作

    我在 ListView 中有一些自定义元素 据了解 每个元素只是 LinearLayout 中的 TextView 当文本太长时 我希望 TextView 内的文本成为水平滚动的单行 我阅读了很多关于此问题的文章 并提出了一个应该可行的解决
  • 这是“标签调度”吗?

    假设我有一些代码 void barA void barB void fooA Duplicate code barA More duplicate code void fooB Duplicate code barB More duplic
  • html中元素的排列

    可以使用 html css 实现这种结构吗 但我不想在橙色块之间留出垂直空间 而是想成为一个在另一个块的顶部 我已经使用了 flex 和 grid 但到目前为止还没有真正成功 jsfiddle https jsfiddle net 3uxc
  • VSCode 不会导入 java.awt 包

    我在我的java类中实现了ActionListener 但是当我尝试自动导入 Shift Alt O 时 它给出了这个错误 运行贡献的命令 vscode delegate cmd ksicrwzq 失败 整个代码在这里 import jav
  • 编译器错误消息:CS0433

    我会突然出现一条奇怪的错误消息 我是一个初学者 用 C 在 ASP NET 中构建一个网站 发现错误的文件是 ascx 用户控制文件 编译器错误消息 CS0433 两者中都存在类型 链接 Temporary ASP NET Files ro
  • package.json 中的本地依赖项

    我想做这样的事情 所以npm install还安装了package json of somelocallib或者更重要的是它的依赖关系 dependencies express somelocallib npm gt 2 0 0 这个功能是
  • 错误模块“QtQuick”版本 2.12 未安装

    我已经安装了 Qt 4 5 0 社区 我正在尝试使用以下命令构建我的项目Qt5 10 0 MinGW 32位 将 QtQuick 2 12 导入到 qtquick 项目的 qml 文件中后 我遇到以下错误 模块 QtQuick 版本 2 1
  • 使用 OData 服务时无法加载资源

    你好 社区 我需要一些帮助 我的 odata 服务已经在运行 并且我有一个像这样的网址 https myclient port sap opu odata SAP servicename SRV MaterialListSet https
  • 更新到 ASP NET 5 beta5 破坏了一切

    我在更新到 beta5 时遵循了本指南 并且更新过程似乎有效 http blogs msdn com b webdev archive 2015 06 30 asp net 5 beta5 now available aspx http b
  • 处理 Array#map 内 async/await 中的错误(拒绝)

    节点 8 1 2 我有一个结构 其中一个文件在映射中调用另一个文件的函数 在一个真实的例子中我会使用Promise all on the map但这不是这里的问题 结构如下 A js const b require B function e
  • 将 GUID 转换为 varchar(32)

    我怎样才能转换一个GUID36字符到 VARCHAR 32 我正在尝试将数据从一个表复制到另一个表 这两个表中有两个相似的列 表1 colx是一个 GUID 所以它是36由于连字符而导致的总字符长度 对应的列是表2 colx但它是一个 VA
  • 添加这个按钮是什么

    How can i add what s this button besides close button i have seen lot of threads where they want to remove it but not a
  • ViewPager 中区分用户滚动和程序化页面更改

    我有一个android support v4 view ViewPager在我的应用程序中 我想区分以编程方式启动的平滑滚动和用户启动的触摸滚动 我看过ViewPager OnPageChangeListener我相信答案可能就在那里 但我
  • 在 PHP 中上传图像时去除元数据

    我认识的某个网站最近将其带宽从每月 2 5 TB 升级到 3 5 TB 原因是他们最近超过了 2 5 限制 他们抱怨不知道如何降低带宽使用量 我没有看到他们考虑的一件事是 网站上显示的 JPEG 和其他图像 这是一个图像较多的网站 可以包含
  • 使用 python 的 optparse 时在帮助消息中显示换行符

    我正在使用 optparse 模块进行选项 参数解析 出于向后兼容性的原因 我无法使用 argparse 模块 如何格式化我的 Epilog 消息以便保留换行符 在下面的示例中 我希望按格式打印尾声 epi Examples usages