银河系的argparse包装器
galaxygetopt的Python项目详细描述
你写的东西是这样的,包含了所有的信息 您可能需要一个工具;选项、测试用例、元数据
fromgalaxygetopt.ggoimportGalaxyGetOptasGGOc=GGO(options=[['int','An integer parameter',{'required':True,'validate':'Int','default':10}],['float','A float',{'required':True,'validate':'Float','default':1e-4}],['string','A string value',{'required':True,'multiple':True,'default':['Hello','World'],'validate':'String'}],
你可以用一个很好的dict来获取数据
{'int':40,'float':'1e-4','string':['Hello','World']}
已知错误
目前galaxy xml中有一个已知的错误,在高度特定的 情况。如果定义的参数是
- required
- hidden
- validate String(可能不是硬请求)
- _galaxy_specific
期望它能正确地产生价值,但它不会。见行 206/207的galaxygetopt/ggo.py用于当前的黑客攻击 围绕着这个。
其他
这个库有许多子类 galaxygetopt.parameter.parameter,所有这些都有无数个数字 选择。为了残酷地测试这些,我添加了一个类 galaxygetopt/tests/parameter_generator.py,它可以生成 给定规则,函数调用的单个可能组合 指定。然后可以生成数百个具有不同集合的对象 选项,您可以筛选出一个子集并随意测试。看那个 类的文档以获取更多信息。