argparse相关内容
上下文: 我正在开发一个小模块,根据它们的 exif 时间戳自动重命名目录中的照片(目标:轻松混合来自不同相机或智能手机的图片).它可以作为 Python 包顺利运行,也可以通过使用 argparse 的小包装器直接从命令行运行. 而且我刚刚有了将它本地化为非英语语言的(相当愚蠢的)想法.好吧,gettext 是我所有自己代码的朋友,但是当我谈到 agparse 生成的消息时,我发现自
..
我想在python3中创建一个类似命令行/类似shell的界面. Argparse 似乎负责解析和显示帮助/错误消息.根据 python3 argparse 文档,有一个 func= 参数,可用于获取 argparse 调用的函数. # 子命令函数def foo(args):打印(args.x * args.y)定义栏(参数):打印('((%s))' % args.z)# 创建顶级解析器解
..
我想编写一个 argparse 命令,当我没有设置可选参数时,它需要两个位置参数.在我的情况下,就像我想用两个必要的参数调用它,但是当我说 python3 test.py -gui 我希望你不需要这两个参数,因为那样你正在使用 gui. 谢谢 解决方案 这是我在评论中提出的: 导入 argparse解析器 = argparse.ArgumentParser()parser.add_
..
我正在开发一个自定义 Nagios 脚本,我想在其中使用与现有 Nagios 插件 check_disk 相同的方式来解析命令行参数. 在该插件中,您有一个选项参数 -C 可以Clear 当前配置并使用新参数重新开始. 摘自check_disk帮助: check_disk -w 100 -c 50 -C -w 1000 -c 500 -p/foo -C -w 5% -c 3% -p/
..
是否可以创建一组相关且可重复的可选参数? 假设我有三个参数 -a, -b, -c 组成一个集合, -a 是必需的,但 -b 和 -c 是可选的.(更新) 我希望能够指定多组这些. Script.py -a 1 -b 2 -c 3 -a 4 -c 6 -a 7 -b 8 -a 10 这将被解析为一个字典列表,如下 [{“a":1,“b":2,“c":3},{"a":4, "c":6
..
我正在尝试编写一个能够执行多个子命令的程序.argparse 模块非常有用,但我认为它缺乏指定多个子命令的能力.例如,如果我有以下代码: parser = argparse.ArgumentParser(prog='My Prog')sub_parsers = parser.add_subparsers()subcommand_a = sub_parsers.add_parser('subcom
..
我有一个小的 python 脚本,它使用 argparse 让用户定义选项.它为不同的模式使用两个标志和一个让用户定义文件的参数.请参阅下面的简化示例: #!/usr/bin/python3导入参数解析从 Shutil 导入复制文件def check_file(f):# Mock 函数:检查文件是否存在,否则 "argparse.ArgumentTypeError("file not found
..
看看这个答案,我可以这样做: parser=argparse.ArgumentParser()parser.add_argument('-D',action='append',help='FOO=BAR')options = parser.parse_args('-DVAR1=9 -DVAR2=Off'.split()) 我得到: 命名空间(D=['VAR1=9', 'VAR2=Off'])
..
我正在尝试从 argparse 获取一串数字.是否提供参数 -n 是可选的. 导入 argparse解析器 = argparse.ArgumentParser()parser.add_argument('-n', nargs=1) # -n 是可选的,但必须带有一个且只有一个参数args = parser.parse_args()测试 = args.n如果测试!= '无':打印(“嗨"+测试)
..
找不到任何现有的方法,所以我想知道是否有黑客攻击? 解决方案 有一个 hack;您可以使用未记录的属性 parser._actions 列出所有已注册的操作: >>>导入参数解析>>>解析器 = argparse.ArgumentParser()>>>parser.add_argument('--foo')_StoreAction(option_strings=['--foo'], de
..
我想要 3 个可选的位置参数(int、int、str). 我想要的: $ ./args.py 0 100 视频开始=0结束=100视频='视频'$ ./args.py 0 100开始=0结束=100视频=无$ ./args.py 0开始=0结束=无视频=无$ ./args.py 视频开始=无结束=无视频='视频'$ ./args.py开始=无结束=无视频=无 我尝试过的: #!/usr
..
我想实现一个 arg 解析器,它允许我将单元测试作为子命令之一运行,盲目地将参数传递给 unittest.main().例如, $ foo.py unittest [传递给 unittest.main() 的参数] 连同其他子命令: $ foo.py foo ...$ foo.py 栏... 按照 argparse 的例子,这是有效的: #!/usr/bin/python导入参数解析p
..
不是用户必须使用 script.py --file c:/stuff/file.txt 有没有办法让用户选择性地使用 --file?因此,它看起来像 script.py c:/stuff/file.txt,但解析器仍然知道用户指的是 --file 参数(因为它是隐含的).> 解决方案 试试这个 导入 argparse类 DoNotReplaceAction(argparse.Action):
..
我有以下代码 parser = argparse.ArgumentParser(allow_abbrev=False, add_help=False)parser.add_argument('--conf', nargs=1)parser.add_argument('-h', '--help', nargs='?', const='generic')parser.add_argument('-v
..
我正在尝试使用 argparse 解析命令行 from argparse import ArgumentParserargparser = ArgumentParser(prog="parse", description="desc")create.add_argument("--name",dest="name",required=True,help="元素名称")args = argpars
..
我正在尝试从 argparse 获取一串数字.是否提供参数 -n 是可选的. 导入 argparse解析器 = argparse.ArgumentParser()parser.add_argument('-n', nargs=1) # -n 是可选的,但必须带有一个且只有一个参数args = parser.parse_args()测试 = args.n如果测试!= '无':打印(“嗨"+测试)
..
在这个问题中 argparse:需要两个参数之一 我找到了我想要的解决方案的参考,但它不正确. 我需要至少提供 2 个选项中的 1 个,option1、option2 或两者... add_argument_group 函数没有必需的参数.add_mutually_exclusive 函数有它,但它迫使我在 2 个选项之间进行选择,这不是我想要的. rds, 解
..
找不到任何现有的方法,所以我想知道是否有黑客攻击? 解决方案 有一个 hack;您可以使用未记录的属性 parser._actions 列出所有已注册的操作: >>>导入参数解析>>>解析器 = argparse.ArgumentParser()>>>parser.add_argument('--foo')_StoreAction(option_strings=['--foo'], de
..
假设我有一个输入文件选项和一个输出文件选项.我怎样才能创建一个结合这两者的选项?例如: $ ./my_script.py -i input.txt -o output.txt 可以组合为: $ ./my_script.py --io input_output.txt 你可能会说我可以用 -io 来组合这两个选项,但是 -io filename 是 -i -o filename 的快捷方式>
..
如何检查标志 --load 是否存在? #!/usr/bin/env python3导入参数解析导入操作系统parser = argparse.ArgumentParser(description='Process some integers.')parser.add_argument('-l', '--load', nargs='?', metavar='path', help='在路径中递归
..