我需要开始这样的工作:
./foo.py [-b option [-a]]
使用 argparse。我考虑过使用 sub_parsers,但我不知道如何使它工作。
直接的方法是简单地在代码中添加规则,如果 -a 存在而不是 b,则可以选择抛出错误(并将其记录在用户帮助中)。您还可以使用usage
关键字覆盖使用字符串:http: //docs.python.org/dev/library/argparse.html#usage
sub_parsers 很好,但我认为它们不符合您的需求。他们的用例更像是把很多特性放在一个可执行文件中(想想 svn add、svn ci、svn co 等)