是否有一个Perl模块与python的optparse等效?OptionParser?[已关闭]

0g0grzrc  于 2022-11-15  发布在  Perl
关注(0)|答案(4)|浏览(149)

**已关闭。**此问题不符合Stack Overflow guidelines。当前不接受答案。

我们不允许问题寻求书籍、工具、软件库等的建议。您可以编辑问题,以便使用事实和引文来回答。
7个月前关闭。
机构群体在6个月前审查了是否重新讨论此问题,并将其关闭:
原始关闭原因未解决
Improve this question
我有一个新的脚本,我需要用perl编写,以利用我们的perl代码库(不,我不能转换它,至少还不能)。我们的编码标准规定了Getopt::Long::GetOptions(),但我意识到,如果我能把python的optparse.OptionParser放到其中,我的选项处理将得到极大的改进和简化。我喜欢python的地方:验证输入(格式和必需/可选),并根据参数配置自动生成帮助字符串。
有什么建议吗?我知道我可以自己卷,但我宁愿用别人的作品,如果它已经完成了。

67up9zun

67up9zun1#

规范的工具是Getopt::Long。它本身并不是“声明性的”。是否有一些特定的行为是你试图复制的?

编辑:若要获得更多功能,您可能会对App::Cmd或其部分内容感兴趣(另请参阅App::Cmd::Tutorial)。

在内部使用Getopt::Long::Descriptive,它似乎满足了你的大部分需求。这对你可能特别有用,因为它在内部使用Getopt::LongParams::Validate,所以移动你当前的代码库可能非常容易,但现在有了验证。

zu0ti5jz

zu0ti5jz2#

CPAN上的GetOpt名称空间中有很多选项。
GetOpt::StdGetOpt::Long都是核心模块。

sigwle7e

sigwle7e3#

现在有:Getopt::optparse(注意:我是此软件包的作者)

j1dl9f46

j1dl9f464#

MooseX::GetoptMooX::Options都是选项。两者的工作方式类似,都使用Getopt::Long::Descriptive,将其与类集成以提供高级验证、默认设置和帮助文本。然后,您只需使用new_with_options构造函数,就可以获得该类的示例,并从命令行填充该类的所有位置。

相关问题