我正在构建一个 python 脚本,它使用 raw_input 在控制台中与用户进行通信。现在,我只是想知道是否有一种简单的方法来使用参数标志(类似于其他控制台/cmd 脚本),例如:
用户输入的命令“foo”可以后跟一个标志,例如:“foo -a”,我的脚本可以相应地采取行动。据我了解,Python 有一个 argparser 模块,但那是在脚本运行时使用的,不是吗?
我想这可以手动完成,通过在空白处拆分输入然后切换标志,但是有没有优雅的方法?
提前致谢!
如果我能正确理解你,你想解析来自“raw_input”的参数。我对么?如果在这种情况下是,您也可以使用它ArgumentParser
来解决您的问题:
>>> import argparse
>>> parser = argparse.ArgumentParser(prog='myprogram')
>>> parser.add_argument('-a', help='execution -a option', action='store_true')
>>> args = parser.parse_args(raw_input().split())
-a # Here I entered `-a`
>>> args.a
True
a=raw_input()
...
b=a.split()
if b[1]=="-a":
# your code
elif b[1]=="-b":
#your code
else:
print("Don't know the argument")
除此之外,我认为 argparse 将是一种优雅的方式。