argparse相关内容
是否可以使用argparse将--longoption表示为-longoption? argparse.prefix_chars不起作用,因为假设前缀字符将重复用于 long 选项. 我在想也许有一种方法可以关闭短选项并允许长选项使用单破折号而不是双破折号.像这样: parser = argparse.ArgumentParser()parser.turn_off_short_opt
..
我想创建具有以下签名的参数解析器: ./myapp [-a [-b BVAL] |-c] 换句话说,只有在他提供参数 -a 的情况下,用户才能提供参数 -b BVAL. 创建-a和-c的互斥组很容易,但我不知道如何创建关系allow -b onlyif -a 提供 解决方案 Docopt 和我一样通缉.太棒了! docopt('./myapp [-a [-b BVAL]
..
如何检查特定的子解析器? 导入 argparse如果 __name__ == "__main__":mainparser = argparse.ArgumentParser()submainadder = mainparser.add_subparsers(title='subcommands')parser_ut = submainadder.add_parser('unittest')东西
..
我像这样创建了一个 argparser: parser = argparse.ArgumentParser(description='someDesc')parser.add_argument(-a,required=true,choices=[x,y,z])parser.add_argument( ... ) 但是,仅针对选项“x"而不是选项“y,z",我想要一个额外的 REQUIRED
..
本地化的命令行应用程序看起来很奇怪,其中一些消息是用户语言,而其他部分是英语. 我不知道从源代码安装 Python 3 时是否搞砸了什么,似乎没有 *.mo 文件,所以 argparse(在整个)不知道本地化. API 似乎也没有提供本地化的方法.还是我错过了? 我可以修补 argparse.py,但我不会,因为我希望它是可移植的,而且我不同意建议用户修补他们的 Python 安
..
我正在尝试在我的 Python 应用程序中使用 argparse 模块.我的应用程序应该使用没有任何前缀的单个强制参数运行.我想不出办法来做到这一点. 解决方案 这是一个使用 argparse 来要求一个整数参数的简单示例: 导入 argparseparser = argparse.ArgumentParser(description='处理一个整数')parser.add_argume
..
我正在尝试以与 这个没有答案的问题. 我的称呼是: args = []夸格 = {'solr_url': 'http://127.0.0.1:8983/solr/collection1','类型':'意见','更新':是的,'一切':真的,'do_commit':是的,'回溯':是的,}call_command('cl_update_index', **kwargs) 理论上,根据 文
..
我正在解析一些命令行参数,其中大部分需要传递给方法,但不是全部. parser = argparse.ArgumentParser()parser.add_argument("-d", "--dir", help = "目录名", type = str, default = "backups")parser.add_argument("-n", "--dbname", help = "数据库名称
..
我目前使用 Python 编写脚本,但出于多种原因我希望尝试 Ruby.上周,我查看了大量示例代码并阅读了大量文档.我担心的一个问题是 Ruby 中缺少正确的命令行参数解析库.Ruby 专家,不要生我的气——也许我不知道.这就是我在这里的原因. 在 Python 中,我习惯于使用 argparse,这在我看来是完美的(也许满足我的需要).不幸的是,OptionParser 不允许 argpa
..
我正在使用 argparse 来解析命令行参数,默认情况下,在接收到无效参数时,它会打印帮助消息并退出.当 argparse 收到无效参数时,是否可以自定义它的行为? 通常我想捕捉所有无效的参数并用它们做一些事情.我正在寻找类似的东西: parser = argparse.ArgumentParser()# 在这里添加一些参数尝试:parser.parse_args()除了 Invalid
..
我已经添加了一个参数 -c,现在我想添加另一个名为 -ca 的参数.如何将 -ca 的默认值设置为 -c?我想要做的是,如果未指定 -ca,则将 -c 分配给 -ca. parser.add_argument("-c", type=str)parser.add_argument("-ca", type=str, default=XXX) 谢谢. 解决方案 通常,单破折号标志是单个字符.
..
我正在构建一组脚本和模块来管理我们的基础设施.为了使事情井井有条,我想尽可能多地整合工作,并尽量减少新脚本的样板. 特别是这里的问题是整合 ArgumentParser 模块. 一个示例结构是让脚本和库像这样组织: |-- bin|-- 脚本1|-- 脚本2|-- 库|-- 记录器|-- lib1|-- lib2 在这种情况下,script1 可能只使用 logger 和 lib1
..
我正在使用 argparse 并为我的程序设置了子命令.我创建了子解析器来定义这些子命令.我有一些不应在帮助屏幕中向用户显示的管理命令.我知道我们可以隐藏子命令的参数,但我不知道如何隐藏一些子命令而不显示在帮助列表中. 这是我的代码片段, parser = argparse.ArgumentParser(prog='myProg',描述=描述,formatter_class=argpars
..
我正在尝试将参数从 pytest 测试用例传递到正在测试的模块.例如,使用 Python 样板 中的 main.py,我可以从命令行为: $ python3 main.py用法:main.py [-h] [-f] [-n NAME] [-v] [--version] argmain.py:错误:需要以下参数:arg$ python3 main.py xx你好,世界命名空间(arg='xx',fl
..
GNU getopt 和使用它的命令行工具允许选项和参数交错,称为置换选项(参见 http://www.gnu.org/software/libc/manual/html_node/Using-Getopt.html#Using-Getopt).Perl 的 Getopt::Long 模块也支持这个(使用 qw(:config gnu_getopt)).argparse 似乎不支持(甚至提到)置换
..
我主要使用 argparse 在 python 中制作命令行脚本,我通常使用的习惯用法是将参数分配为对象的属性,然后将它们单独解析为与其属性名称匹配的变量.这似乎有点重复.有没有办法将它们全部分配到全局命名空间中并省去分配步骤;或者当某些 Python 行为对我来说似乎违反直觉时经常出现的情况,一些聪明的 Python 专家能否指出我不应该这样做或想要这样做的充分理由? 我现在拥有的是:
..
我意识到这很像 使用 argparse 模块在 Python 中设置两个互斥选项的默认选项 尽管从不同的角度来看(并且那里给出的答案似乎没有帮助). 代码块(解析器是argparse.ArgumentParser的一个实例): mutex_group = parser.add_mutually_exclusive_group()mutex_group.add_argument("--sho
..
我想区分这三种情况: 该标志根本不存在python example.py; 标志存在但没有值 python example.py -t;和 该标志存在并具有值 python example.py -t ~/some/path. 我怎样才能用 Python argparse 做到这一点?action='store_true' 涵盖前两种情况,但随后第三种情况无效. 解决方案
..
此问题与之前提出的问题有关,但可能无关.问题是:当使用子解析器时,如何在下面给定(工作)示例中的帮助文本中使用换行符? 导入 argparse解析器 = argparse.ArgumentParser(formatter_class=argparse.RawTextHelpFormatter)subparsers = parser.add_subparsers()parser_start = s
..
我一定遗漏了一些明显的东西.目标是将 argparse 与需要的第一个参数、第二个可选参数和任何其他可选参数一起使用. 为了说明问题,我做了两个测试解析器;它们之间的唯一区别是在一个中使用 nargs=argparse.REMAINDER,在另一个中使用 nargs='*'. def doParser1(argsin):parser = argparse.ArgumentParser(de
..