python - 为什么使用argparse而不是optparse?

python - 为什么使用argparse而不是optparse?

我注意到Python 2.7文档包含了另一个命令行解析模块。 除了getopt和optparse之外,我们现在已经有了argparse 。 为什么还要创建另一个命令行解析模块? 为什么我应该使用它而不是optparse ? 是否有我应该知道的新功能?…


Python argparse:如何在帮助文本中插入换行符?

我在Python 2.7中使用argparse来解析输入选项。 我的一个选择是多选。 我想在帮助文本中列出一个列表,例如 from argparse import ArgumentParser parser=ArgumentParser(description='test') parser.add_argument('-g', choices=['a', 'b', 'g', 'd', 'e…


当没有任何参数调用脚本时,用python argparse显示帮助消息

这可能是一个简单的。 假设我有一个使用argparse来处理命令行参数/选项的程序。 以下将打印'帮助'消息:./myprogram-h 要么:./myprogram--help 但是,如果我没有任何争论地运行剧本,它什么都不会做。 我想要它做的是在不带参数调用时显示用法消息。 这是如何完成的?…


python - argparse模块如何添加没有任何参数的选项?

我用argparse创建了一个脚本。 该脚本需要将配置文件名称作为选项,用户可以指定是完全执行脚本还是仅对其进行模拟。 要传递的参数:./script-f config_file-s或./script-f config_file 。 这对于-f config_file部分是可以的,但是它不断询问我是否是选项的参数,并且不应该跟随任何参数。 我试过这个: parser=argpa…



使用argparse在Python中使用可选的stdin

我发现了非常有用的语法 parser.add_argument('-i', '--input-file', type=argparse.FileType('r'), default='-') 用于指定输入文件或使用stdin-我想在程序中使用它们。 但是,并不总是需要输入文件。 如果我没有使用-i或重定向输入 $ someprog | my_python_prog $ my_python…


在Python中使用'argparse.ArgumentError'

我想在Python的argparse模块中使用ArgumentError异常,但我无法弄清楚如何使用它。 签名说它应该被称为ArgumentError(argument, message),但我无法弄清楚应该是什么argument 。 我认为它应该是解析器对象的一部分,但我找不到任何文档。…


python - argparse:确定使用哪个子分析器

这个问题在这里已经有了答案: 使用argparse 2答案 获取选定的子命令 我认为这一定很容易,但我不明白。 假设我有以下arparse解析器: import argparse parser=argparse.ArgumentParser( version='pyargparsetest 1.0')subparsers=parser.add_subparsers(help=…


Python argparse:很多选择会导致丑陋的帮助输出

我有这个代码,我通常很高兴: import argparse servers=[ "ApaServer", "BananServer", "GulServer", "SolServer", "RymdServer", "SkeppServer", "HavsServer", "PiratServer", "SvartServer", "NattServer", "S…


如何使用python argparse解析多个嵌套的子命令?

我正在实现一个命令行程序,其界面如下: cmd[GLOBAL_OPTIONS]{command[COMMAND_OPTS]}[{command[COMMAND_OPTS]}...] 我已经浏览了argparse文档 。 我可以使用argparse add_argument将add_argument实现为可选参数。 使用Sub-commands{command[COMMAND_O…


python - 使用argparse需要两个参数中的任意一个

鉴于: import argparse pa=argparse.ArgumentParser() pa.add_argument('--foo') pa.add_argument('--bar') print pa.parse_args('--foo 1'.split()) 我如何 使至少一个“foo,bar”为必填项:--foo--foo x,----bar y和--foo…




argparse使用 argparse argparse参数解析 bool argumentparser argparse入门 list python3 parser argparse安装