问题标签 [optparse]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
2651 浏览

python - Python、optparse 和文件掩码

结果是

当前文件夹中有 video_[1-6].wmv。问题是为什么video_*变成video_1.wmv。我做错了什么?

0 投票
5 回答
12361 浏览

python - Python optparse 元变量

我不确定optparse'smetavar参数的用途。我看到它到处都在使用,但我看不到它的用途。

有人可以对我说清楚吗?谢谢。

0 投票
4 回答
25095 浏览

python - Python Optparse 列表

我在我的程序中使用了 python optparse 模块,但我无法找到一种简单的方法来解析包含值列表的选项。

例如:

我希望能够以列表格式访问这些值,如options.groups[]. 是否有 optparse 选项将逗号分隔值转换为列表?还是我必须手动执行此操作?

0 投票
4 回答
4272 浏览

python - 如何模拟 Python 方法 OptionParser.error(),它执行 sys.exit()?

我正在尝试对一些看起来像这样的代码进行单元测试:

使用如下所示的代码:

我正在使用Michael Foord 的 Mock和 nose 来运行测试。

当我运行测试时,我得到:

问题是 OptionParser.error 执行 sys.exit(2),因此 main() 自然依赖于此。但是鼻子或单元测试检测到(预期的) sys.exit(2) 并且测试失败。

我可以通过在 main() 中的 parser.error() 调用下添加“return 2”并从 parser_error_mock() 中删除 sys.exit() 调用来使测试通过,但我发现将被测代码修改为允许测试通过。有更好的解决方案吗?

更新df的答案有效,尽管正确的调用是“self.assertRaises(SystemExit, sut.main)”。

这意味着测试通过了 parser_error_mock() 中 sys.exit() 中的任何数字。有什么方法可以测试退出代码吗?

顺便说一句,如果我添加,测试会更加健壮:

在末尾。

更新 2:我可以通过将“self.assertRaises(SystemExit, sut.main)”替换为:

0 投票
4 回答
10309 浏览

python - 如何使用 Python 的 optparse 格式化位置参数帮助?

文档中所述,optparse.OptionParser使用IndentedHelpFormatter输出格式化选项帮助,为此我找到了一些API 文档

我想在用法文本中为所需的位置参数显示类似格式的帮助文本。是否有可用于类似位置参数格式的适配器或简单的使用模式?

澄清

最好只使用标准库。Optparse 做得很好,除了这个格式的细微差别,我觉得我们应该能够在不导入整个其他包的情况下修复它。:-)

0 投票
4 回答
4696 浏览

python - OptionParser - 支持命令行末尾的任何选项

我正在编写一个应该在远程服务器上执行命令的小程序(假设是一个相当愚蠢的包装器ssh [hostname] [command])。

我想这样执行它:

但是,我需要不时传递某些命令行:

所以我决定为此使用 optparse.OptionParser 。问题是,我有时命令也有参数,如果我这样做可以正常工作:

但我也希望它在我使用时起作用:

这个想法是,一旦我遇到第一个非选项参数,之后的所有内容都应该成为我命令的一部分。

然而,这给了我:

OptionParser 是否支持这种语法?如果是这样:如何?如果不是:解决此问题的最佳方法是什么?

0 投票
4 回答
2751 浏览

ruby - 使用 Ruby 从命令行参数中提取文件名

我正在尝试使用optparse来解析命令行参数。我希望我的程序接受这样的参数:

我可以轻松管理该[options]部分:

但我如何得到filename

我可以手动从中提取它ARGV,但必须有更好的解决方案,只是无法弄清楚如何

0 投票
3 回答
504 浏览

ruby - optpase 在 cmd 行参数中提供字符串时返回 true 类

我陷入了一个完全愚蠢的境地。当我使用下面的代码片段时,尽管我的命令行是“./the_script.rb -s serv”并且我检查了代码中服务变量的值,但它总是被 optparse 视为布尔类。所以我无法从命令行获取我的字符串......

有任何想法吗 ?

0 投票
3 回答
1239 浏览

python - Optparse:变量 arg 回调操作的使用并不表示需要额外的参数

我在我的 python 代码中实现了一个回调变量参数,类似于在这里可以找到的:
https ://docs.python.org/library/optparse.html#callback-example-6-variable-arguments

添加这样的选项:

问题是,没有提示用户该选项需要额外输入:

有没有办法改变 optparse 的用法,以便用法会打印出如下内容:

0 投票
6 回答
10075 浏览

python - 使用 Python 的 optparse 模块,如何创建一个带有可变数量参数的选项?

使用 Perl Getopt::Long,您可以轻松定义带有可变数量参数的命令行选项:

有没有办法直接用 Python 的optparse模块做到这一点?据我所知,nargsoption 属性可用于指定固定数量的选项参数,我在文档中没有看到其他替代方法。