argparse相关内容

使用 'argparse' 而不是 sys.argv

我的脚本当前使用 sys.argv 来检查提供给程序的输入文件. 我正在尝试使用 argparse 代替,但我似乎无法让它工作.我能够设置它并添加一个参数,但是当我解析一个参数并打印该解析后的参数时,我得到了一个命名空间.我怎样才能得到一个字符串?基本上,我想将参数作为字符串,然后打开一个具有该名称的文件. 目前,我的 sys.argv 是: 文件名 = sys.argv[1]f = ..
发布时间:2021-11-17 21:15:25 Python

Python 'sys.argv' 是否限制在最大参数数量上?

我有一个需要处理大量文件的 Python 脚本.为了绕过 Linux 对可以传递给命令的参数数量的相对较小的限制,我使用了 find -print0 和 xargs -0. 我知道另一种选择是使用 Python 的 glob 模块,但是当我有更高级的 find 命令、查找修改时间等时,这将无济于事. 在大量文件上运行我的脚本时,Python 只接受参数的一个子集,我首先想到的限制是在 ..
发布时间:2021-11-17 21:14:52 Python

如何将 python argparse 与 sys.argv 以外的 args 一起使用?

我已经浏览了所有文档,但似乎没有办法做到这一点,但是: 有没有办法将 argparse 与任何字符串列表一起使用,而不仅仅是与 sys.argv 一起使用? 这是我的问题:我有一个看起来像这样的程序: #这个文件是program1.py导入参数解析定义主(argv):解析器 = argparse.ArgumentParser()# 做一些参数解析如果 __name__ == '__m ..
发布时间:2021-11-17 21:11:56 Python

Python argparse 需要选项,取决于定义的标志

我有一个小的 python 脚本,它使用 argparse 让用户定义选项.它为不同的模式使用两个标志和一个让用户定义文件的参数.请参阅下面的简化示例: #!/usr/bin/python3导入参数解析从 Shutil 导入复制文件def check_file(f):# Mock 函数:检查文件是否存在,否则 "argparse.ArgumentTypeError("file not found ..

Python - 将参数传递给来自 Argparse 的不同方法

我正在编写一个相对简单的 Python 脚本,它支持几个不同的命令.不同的命令支持不同的选项,我希望能够将 argparse 解析的选项传递给指定命令的正确方法. 用法字符串如下所示: 用法:script.py [-h]{a, b, c}...script.py:错误:参数太少 我可以轻松调用适当的方法: def a():...定义 b():...定义 c():...如果 __name ..
发布时间:2021-11-17 05:46:16 Python

python argparse 额外的参数

我想使用 argparse 获得额外的参数,但不知道它们是什么.例如,在 maven 中,我们可以在表单中添加参数:-Dmaven.test.skip=true 或 -Dcmd=compiler:compile 我想在 python 中使用 argparse 得到同样的东西,并用所有的 args 得到某种 dict .. 我知道我可以使用: aparser.parse_known_a ..
发布时间:2021-11-17 05:40:11 Python

使用 optparse 接受参数的最 Pythonic 方式

我目前有一个 python 文件,它利用 sys.argv[1] 在命令行接受一个字符串.然后它对该字符串执行操作,然后将修改后的字符串返回到命令行. 我想实现一个批处理模式选项,在该选项中我可以提供一个字符串文件(每行一个,fwiw)并将其返回到命令行,以便我可以重定向输出执行类似 $ python script.py -someflag file.txt >修改后的.txt 同时仍保 ..
发布时间:2021-11-17 05:37:16 Python

来自文本文件的 Argparse 自定义帮助

我想使用 argparse 库,因为它具有灵活性,但我无法禁用默认帮助对话框以显示文本文件中的自定义帮助对话框.我想要做的就是在传递“-h"或“--help"选项时显示文本文件中的文本.这是我如何尝试此操作的示例: parser = argparse.ArgumentParser(add_help=False)parser.add_argument("file", type=str, nargs ..
发布时间:2021-11-17 05:37:10 Python

使用 argparse 输出调用函数

目前我的代码是这样的.它允许我解析我的程序脚本获得的多个参数.有没有更接近“最佳实践"的不同方式?我还没有看到实际使用 argparse 输出的代码,只看到如何设置它. def useArguments():x = 0当 x 解决方案 你可以提供一个自定义的 action 为一个论据,我引用: 传递一个实现了动作API.最简单的方法来做到这一点是扩展argparse.Action,提 ..
发布时间:2021-11-17 05:36:37 Python

使用 argparse 的组之间的 Python 依赖关系

我开始学习 Python,现在我正在学习 argparse 的巨大好处.使用 argparse,我创建了两组参数:group_list 和 group_simulate.每个组都有自己的参数——用户只能在每个组中指定一个参数(使用 parser.add_mutually_exclusive_group() 实现). 现在,如果用户从两个 groupgs 中指定参数而不是仅从其中一个中指定参数 ..
发布时间:2021-11-17 05:36:05 Python

Python 没有说明错误所指的代码行

我已尝试更正以下错误,该错误主要与“用户名"和“目录"的参数有关.我已经尝试了所有可能的方法,但没有运气.Python 没有说明以下错误所指的代码行: 用法:Google_Map.py [-h] [-n NUM_TO_DOWNLOAD] [-l LOG_LEVEL]用户名目录Google_Map.py:错误:需要以下参数:用户名、目录 请在此处查看代码: def __init__(self, ..
发布时间:2021-11-17 05:33:28 Python

Python Argparse多次使用相同的参数

大家好,我遇到了一个问题,所以基本上,我正在使用 Argparse 并希望多次使用相同的参数 --filter 从字典列表过滤器和 中获取一个参数--parameters 从 --filter 传递所选方法的参数 即: python filename.py --filter filtermax \--参数你好2\--filter filterPlus \--参数 6 "你好 9 \- ..
发布时间:2021-11-17 05:33:13 Python

Python Argparse多次使用相同的参数

大家好,我遇到了一个问题,所以基本上,我正在使用 Argparse 并希望多次使用相同的参数 --filter 从字典列表过滤器和 中获取一个参数--parameters 从 --filter 传递所选方法的参数 即: python filename.py --filter filtermax \--参数你好2\--filter filterPlus \--参数 6 "你好 9 \- ..
发布时间:2021-11-17 05:32:31 Python

在子解析器 args 之后添加顶级 argparse 参数

如何允许在使用子解析器的子命令后添加顶级程序参数? 我有一个程序,其中包含多个子解析器以允许使用子命令,从而改变程序的行为.以下是其设置方式的示例: #!/usr/bin/env python# -*- 编码:utf-8 -*-导入参数解析def task_a():打印('did task_a')def task_c():打印('did task_c')def task_d():打印('d ..
发布时间:2021-11-17 05:29:36 Python

在 argparse 中禁用/删除参数

是否可以删除或禁用 argparse 中的参数,使其不显示在帮助中?怎么样? 添加新参数很容易: parser = argparse.ArgumentParser()parser.add_argument('--arg1', help='Argument 1')parser.add_argument('--arg2', help='第二个') 而且我知道您可以通过指定“解决"冲突处理程序 ..
发布时间:2021-11-17 05:27:37 Python

Python:argparse 子命令子命令?

我有一个有很多可用选项的程序.例如用于更改设置的配置选项. ./app config -h 使用普通的 argparse 子命令为我提供帮助 现在我想向名为 list 的配置子命令添加另一个子命令以列出配置值 ./app 配置列表 此外,该命令应该接受另一个选项,以便我可以说 ./app 配置列表 CATEGORY 只列出一个类别的配置 我现在的代码基本上就是这个,只是有更 ..
发布时间:2021-11-17 05:25:24 Python