解释 lambda argparse.HelpFormatter(prog, width)

2024-01-03

此代码可以正常工作以增加帮助文本的宽度,但尚不清楚。 lambda 函数是做什么的?

编辑:为了澄清,问题不是为什么 lambda 函数通常很有用, 但反而,参数解析器初始化代码如何使用 lambda 函数?

import argparse
import sys

formatter = lambda prog: argparse.HelpFormatter(prog, width=100)

dummy_text = """Lorem ipsum dolor sit amet, consectetur adipiscing elit,
    sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
    enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi
    ut aliquip ex ea commodo consequat. Duis aute irure dolor in
    reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
    pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
    culpa qui officia deserunt mollit anim id est laborum."""

parser = argparse.ArgumentParser(description=dummy_text, formatter_class=formatter)

parser.add_argument("-e", dest="destE", help=dummy_text)
parser.add_argument("-w", dest="destW", help=dummy_text)
args = parser.parse_args(sys.argv)

这是__init__默认的 HelpFormatter 类是:

def __init__(self,
             prog,
             indent_increment=2,
             max_help_position=24,
             width=None):

The ArgumentParser类使用此函数来获取 Formatter 实例。该实例由以下人员使用format_help创建帮助消息。

def _get_formatter(self):
    return self.formatter_class(prog=self.prog)

where self.formatter_class是你设置的参数。所以默认调用只设置prog范围。

formatter = lambda prog: argparse.HelpFormatter(prog, width=100)

称为HelpFormatter添加了width范围。

这是一个等效的用法lambda具有更简单的功能:

In [176]: def foo(x,y):
     ...:     return x,y
     ...: 
In [177]: bar = lambda y: foo('x_str',y)
In [178]: bar('y_str')
Out[178]: ('x_str', 'y_str')

还有其他方法可以做同样的事情,例如

def formatter(prog):
    return argparse.HelpFormatter(prog, width=100)

or a HelpFormatter子类。

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

解释 lambda argparse.HelpFormatter(prog, width) 的相关文章

  • Django REST序列化器:创建对象而不保存

    我已经开始使用 Django REST 框架 我想做的是使用一些 JSON 发布请求 从中创建一个 Django 模型对象 然后使用该对象而不保存它 我的 Django 模型称为 SearchRequest 我所拥有的是 api view
  • 如何在python中读取多个文件中的文本

    我的文件夹中有许多文本文件 大约有 3000 个文件 每个文件中第 193 行是唯一包含重要信息的行 我如何使用 python 将所有这些文件读入 1 个文本文件 os 模块中有一个名为 list dir 的函数 该函数返回给定目录中所有文
  • DreamPie 不适用于 Python 3.2

    我最喜欢的 Python shell 是DreamPie http dreampie sourceforge net 我想将它与 Python 3 2 一起使用 我使用了 添加解释器 DreamPie 应用程序并添加了 Python 3 2
  • 导入错误:没有名为 _ssl 的模块

    带 Python 2 7 的 Ubuntu Maverick 我不知道如何解决以下导入错误 gt gt gt import ssl Traceback most recent call last File
  • Python 多处理示例不起作用

    我正在尝试学习如何使用multiprocessing但我无法让它发挥作用 这是代码文档 http docs python org 2 library multiprocessing html from multiprocessing imp
  • 如何使用包含代码的“asyncio.sleep()”进行单元测试?

    我在编写 asyncio sleep 包含的单元测试时遇到问题 我要等待实际的睡眠时间吗 I used freezegun到嘲笑时间 当我尝试使用普通可调用对象运行测试时 这个库非常有用 但我找不到运行包含 asyncio sleep 的测
  • SQL Alchemy 中的 NULL 安全不等式比较?

    目前 我知道如何表达 NULL 安全的唯一方法 SQL Alchemy 中的比较 其中与 NULL 条目的比较计算结果为 True 而不是 NULL 是 or field None field value 有没有办法在 SQL Alchem
  • 为 pandas 数据透视表中的每个值列定义 aggfunc

    试图生成具有多个 值 列的数据透视表 我知道我可以使用 aggfunc 按照我想要的方式聚合值 但是如果我不想对两列求和或求平均值 而是想要一列的总和 同时求另一列的平均值 该怎么办 那么使用 pandas 可以做到这一点吗 df pd D
  • __del__ 真的是析构函数吗?

    我主要用 C 做事情 其中 析构函数方法实际上是为了销毁所获取的资源 最近我开始使用python 这真的很有趣而且很棒 我开始了解到它有像java一样的GC 因此 没有过分强调对象所有权 构造和销毁 据我所知 init 方法对我来说在 py
  • 从列表中的数据框列中搜索部分字符串匹配 - Pandas - Python

    我有一个清单 things A1 B2 C3 我有一个 pandas 数据框 其中有一列包含用分号分隔的值 某些行将包含与上面列表中的一项的匹配 它不会是完美的匹配 因为它在其中包含字符串的其他部分 该列 例如 该列中的一行可能有 哇 这里
  • Python 中的二进制缓冲区

    在Python中你可以使用StringIO https docs python org library struct html用于字符数据的类似文件的缓冲区 内存映射文件 https docs python org library mmap
  • 当玩家触摸屏幕一侧时,如何让 pygame 发出警告?

    我使用 pygame 创建了一个游戏 当玩家触摸屏幕一侧时 我想让 pygame 给出类似 你不能触摸屏幕两侧 的错误 我尝试在互联网上搜索 但没有找到任何好的结果 我想过在屏幕外添加一个方块 当玩家触摸该方块时 它会发出警告 但这花了很长
  • 使用 OpenPyXL 迭代工作表和单元格,并使用包含的字符串更新单元格[重复]

    这个问题在这里已经有答案了 我想使用 OpenPyXL 来搜索工作簿 但我遇到了一些问题 希望有人可以帮助解决 以下是一些障碍 待办事项 我的工作表和单元格数量未知 我想搜索工作簿并将工作表名称放入数组中 我想循环遍历每个数组项并搜索包含特
  • Python 3 中“map”类型的对象没有 len()

    我在使用 Python 3 时遇到问题 我得到了 Python 2 7 代码 目前我正在尝试更新它 我收到错误 类型错误 map 类型的对象没有 len 在这部分 str len seed candidates 在我像这样初始化它之前 se
  • 如何将 PIL 图像转换为 NumPy 数组?

    如何转换 PILImage来回转换为 NumPy 数组 这样我就可以比 PIL 进行更快的像素级转换PixelAccess允许 我可以通过以下方式将其转换为 NumPy 数组 pic Image open foo jpg pix numpy
  • 用于运行可执行文件的python多线程进程

    我正在尝试将一个在 Windows 上运行可执行文件并管理文本输出文件的 python 脚本升级到使用多线程进程的版本 以便我可以利用多个核心 我有四个独立版本的可执行文件 每个线程都知道要访问它们 这部分工作正常 我遇到问题的地方是当它们
  • 对输入求 Keras 模型的导数返回全零

    所以我有一个 Keras 模型 我想将模型的梯度应用于其输入 这就是我所做的 import tensorflow as tf from keras models import Sequential from keras layers imp
  • 在python中,如何仅搜索所选子字符串之前的一个单词

    给定文本文件中的长行列表 我只想返回紧邻其前面的子字符串 例如单词狗 描述狗的单词 例如 假设有这些行包含狗 hotdog big dog is dogged dog spy with my dog brown dogs 在这种情况下 期望
  • Spark.read 在 Databricks 中给出 KrbException

    我正在尝试从 databricks 笔记本连接到 SQL 数据库 以下是我的代码 jdbcDF spark read format com microsoft sqlserver jdbc spark option url jdbc sql
  • Python:元类属性有时会覆盖类属性?

    下面代码的结果让我感到困惑 class MyClass type property def a self return 1 class MyObject object metaclass MyClass a 2 print MyObject

随机推荐

  • onResume 手机屏幕锁定时被反复呼叫

    看来 如果手机屏幕锁定时某个 Activity 位于前台 广播事件和 或唤醒锁将导致该 Activity 的 onResume 被调用 无论它们是否适用于您的应用程序 即使您不以任何方式与手机交互 也会发生这种情况 不解锁它 不触摸它 不做
  • Android 上的 SQLite 数据库有大小限制吗? [复制]

    这个问题在这里已经有答案了 我想将 db 文件内部存储在设备 SD 卡中 并希望从中访问数据 有人可以告诉我们在我们的 Android 应用程序中可以检索的 db 文件的最大大小吗 没有任何内存异常 SQLite 的最大大小为 10MB 到
  • 类型类与代数数据类型?

    我经常开始考虑要定义的类型类方面的问题 并意识到当我开始编码时我不需要类型类 并且可以使用代数数据类型来解决我的问题 这看起来更简单 因此 我想知道什么时候需要类型类 据我了解 类型类是表示某些类型存在某些函数的一种方式 例如 当类型 My
  • 迭代 openpyxl 中的只读工作簿中的列

    我有一个有点大的 xlsx 文件 19 列 5185 行 我想打开文件 读取一列中的所有值 对这些值执行一些操作 然后在同一工作簿中创建一个新列并写出修改后的值 因此 我需要能够在同一个文件中读取和写入 我原来的代码是这样做的 def re
  • 带有 SSL 的 Android 应用程序

    我知道这个特定的主题被问过很多次 但不幸的是 就我而言 它们都不起作用 在过去的几天里 我试图让它恢复正常状态 但每次都失败 所以我终于来这里询问 我的服务器上有一个带有自签名证书的网络服务 如果我在浏览器中输入地址 我就可以访问 wsdl
  • 使用 MongoDB 进行单元测试

    我选择的数据库是 MongoDB 我正在编写一个数据层 API 来从客户端应用程序中抽象实现细节 也就是说 我本质上提供了一个公共接口 充当 IDL 的对象 我正在以 TDD 方式测试我的逻辑 在每次单元测试之前 Before调用方法来创建
  • Grep 最后一场比赛的前后行

    我正在搜索一些日志 我想 grep 最后一个匹配项及其上方和下方的几行 grep A10 B10 searchString my log将打印前后 10 行的所有匹配项grep searchString my log tail n 1将打印
  • 以编程方式从 Kendo Grid 中选择一行

    我有一个网格 其中一列是一个模板 其中有一个复选框 Name grid Columns columns gt columns Bound c gt c Id ClientTemplate
  • PhoneGap - Android - 如何将相机捕获的图像保存在SD卡中

    我是 PhoneGap Android 开发人员的新手 我正在使用phonegap 在android 中制作一个应用程序 我想从设备相机拍照 然后在从设备拍摄图像后将其显示在屏幕上 并将捕获的图像存储在 SD 卡中 你能告诉我该怎么做吗 古
  • 二进制轮无法使用twine上传到pypi上

    我正在尝试从 github actions 上传适用于 linux 和 windows 的 Pypi 包 使用linux我得到这个结果 Binary wheel xxx cp36 cp36m linux x86 64 whl has an
  • 如何使用 Rails 在浏览器中查看电子邮件视图

    我正在为我的 Rails 应用程序处理电子邮件 目前我知道查看电子邮件的唯一方法是将其发送给自己 如何让 views 文件夹下的 notifications 文件夹中的 daily summary html haml 在浏览器中呈现 我想我
  • SQL Server:查询循环

    我需要获取所有应用程序数据库 并且我已经能够通过 select name from sys database where database id gt 6 现在 我需要运行以下查询 select User FirstName User Na
  • MVC 4 中的自定义成员资格提供程序

    我刚开始学习MVC4 作为第一步 我需要执行登录 因为自定义数据库在数据库中只有三个角色 真的有必要实施自定义会员资格提供商吗 我对此提出疑问 因为我正在阅读这篇文章 而他正在采取另一种方式 http patrickdesjardins c
  • 默认参数中的 C++ new 运算符及其副作用

    我有一个关于 C 中默认参数的问题 如果我有这样的功能 int foo int obj new Int 4 Stuff with obj 当然 现在整数仅用作示例 但问题是我是否要为参数提供一个值 如下所示 int x 2 foo x 将表
  • git 的源代码树修复 作为限电的一部分,密码身份验证被暂时禁用。请改用个人访问令牌[重复]

    这个问题在这里已经有答案了 仅供参考 这是专门针对 sourcetree 的 我在拉入 sourcetree 时遇到此错误 昨天工作得很好 但突然出现此错误 git c diff mnemonicprefix false c core qu
  • iPhone 崩溃后要求用户发送崩溃日志

    某些应用程序在崩溃后重新启动时询问用户是否要通过电子邮件发送崩溃日志 他们是怎么做到的 他们必须在崩溃时记录日志并读取该文件并要求用户发送它 如果它不为空 是否有一个框架或开源项目可以集成来做到这一点 看看批判主义 www critterc
  • 当按钮事件中 window.location 更改时,IE9 onbeforeunload 被调用两次...最小再现

    我一直在锤击这个问题 但一无所获 我有一个取消按钮 执行 window location 404 htm 当点击时 onbeforeunload 处理程序会触发两次 但前提是用户在第一个对话框中单击 留在此页面 正常的导航 页面刷新 转到主
  • Spark 作业失败,因为 HDFS 正在缓存 jar

    我将 Scala Spark jar 上传到 HDFS 以在我们的集群上测试它们 跑步后 我经常意识到需要做出改变 因此 我在本地进行更改 然后将新 jar 推送回 HDFS 然而 经常 并非总是 当我这样做时 hadoop 会抛出一个错误
  • 将 HH:MM:SS 格式的时间仅转换为秒?

    如何转换时间格式HH MM SS变成单位秒数 P S 时间有时可能有格式MM SS only 无需explode任何事物 str time 23 12 95 str time preg replace d 1 2 d 2 00 1 2 st
  • 解释 lambda argparse.HelpFormatter(prog, width)

    此代码可以正常工作以增加帮助文本的宽度 但尚不清楚 lambda 函数是做什么的 编辑 为了澄清 问题不是为什么 lambda 函数通常很有用 但反而 参数解析器初始化代码如何使用 lambda 函数 import argparse imp