Python带有argparse的自定义解析器错误消息
示例
您可以根据脚本需求创建解析器错误消息。这是通过argparse.ArgumentParser.error功能。下面的示例显示了脚本,其中打印了用法和错误消息,给出了stderrwhen--foo,但没有给出--bar。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("-f", "--foo")
parser.add_argument("-b", "--bar")
args = parser.parse_args()
ifargs.fooandargs.baris None:
parser.error("--foo requires --bar. You did not specify bar.")
print "foo =", args.foo
print "bar =", args.bar假设您的脚本名称为sample.py,我们运行:pythonsample.py--foods_in_fridge
该脚本将抱怨以下内容:
usage:sample.py[-h] [-f FOO] [-b BAR] sample.py: error: --foo requires --bar. You did not specify bar.