2012-04-02 27 views
-2

编写一个带有两个可选布尔参数“ - verbose”和“--live”以及两个必需字符串参数“base”和“pattern”的脚本。请使用argparse设置命令行处理。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') 

回答

2

两个标志和两个参数,详细,分别住,基础和模式。

纵观argparse documentation我们看到,您可以通过指定的store_truestore_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) 

最后,请注意,在定义解析器时应首先指定您的命名选项。其他所有东西都被消耗到你的定位参数中。还要注意,位置参数在设计上是必需的。