Python argparse,将多个参数传递到命令行。

时间:2017-11-28 22:01:30

标签: python argparse

我正在写一个python脚本。

它需要两个参数,一个文件和一组规则的可选参数。规则需要格式化为字典。

我是argparse的新手,并希望使此命令行友好。

如果我退出可选参数并只输入文件,则脚本运行完美。如果我添加测试dictionairy,它返回 -

har_parser.py: error: unrecognized arguments:

我不确定我是否误用了命令行,如果我需要改变传递参数的方式,这将是一个简单的修复。

目前我正在运行脚本......:

$ python myScript.py arg1 arg2

另一个更可能的情况是由于我对argparse的新手经验,我错误地编写了我的函数。

任何方向都会受到赞赏。

def main():
    parser = argparse.ArgumentParser()
    parser.add_argument("file", nargs=1)
    parser.add_argument("--rules")
    args = parser.parse_args()
    if args.rules:
        print(parseHar(str(args.file[0]), args.rules[0]))
    else:
        print(parseHar(str(args.file[0])))

0 个答案:

没有答案