我argparse
在python 2.7中使用解析命令行参数。是否有一些预定义的条件解析可以处理以下示例?
-x1
指定,则-x2 -x3
必须指定,但是-x4
是可选的。-x5
指定了if ,则-x4
必须指定,但它-x2
是可选的。有没有办法在以后不写条件的情况下做到这一点parser.parse_args()
?
出现了一个Python错误问题,该问题要求以argparse
这种mutually exclusive groups
方法为模型的“必需包含”组。http://bugs.python.org/issue11588
提出的主要想法是在退出之前就应用像你这样的组合规则parse_args
。此时,已经列出了一组(或一组)参数。设计一个全面,逻辑和直观的用户界面的主要挑战。编写反映条件的用法行也是具有挑战性的。
但是,如果没有该修补程序,恐怕您将无法根据在args命名空间中找到的值编写自己的测试。如果您正确选择了默认值,这并不难。
另一种可能性是使用子解析器。您必须将-x1
,,-x5
位置选择x1
和更改为x5
,当然它们将是互斥的。
https://stackoverflow.com/a/27258765/901925一个简单的测试示例:
if args.option1 is None and args.option2 is None:
parser.error('at least one of option1 and option2 is required')
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句