编写一个脚本,它带有两个可选的布尔参数,“ - verbose”和“--live”,以及两个必需的字符串参数,“base”和“pattern”。请使用argparse设置命令行处理。
def main():
"""Put the proper argparse goodness below."""
pass
这是我对这个问题的代码,但我完全迷失了。任何指针或代码上的pov都会有所帮助。
import argparse
parser = argparse.ArgumentParser(description = ("arguments"))
parser = add_argument(--verbose, "base", Type = String)
parser = add_argument(--live, "pattern", Type = String)
parser.argparse('base')argparse('pattern')
print = argparse.ArgumentParer(description = ('arguments')
答案 0 :(得分:2)
你要添加的是两个标志和两个参数,分别是详细,实时,基础和模式。
查看argparse documentation我们看到您可以通过指定行为为store_true
或store_false
的参数来添加布尔开关:http://docs.python.org/dev/library/argparse.html#action
parser.add_argument('--verbose', action='store_true')
我们还看到,我们只需跳过标志名称即可添加位置参数:
parser.add_argument('base')
我们可以使用type
参数指定所需的类型:
parser.add_argument('base', type=str)
最后,请注意,在定义解析器时,应首先指定命名选项。其他所有东西都被消耗在你的positionl参数中。另请注意,位置参数在设计上是必需的。
答案 1 :(得分:0)