我在python 3.7中有此脚本:
pars = argparse.ArgumentParser(prog='copy dirs script', description="à copier MSRE localment:",
epilog="Comme ça on copie les repertoires")
pars.add_argument("-o", "--output", action='store_const', default=destination_file,
const=destination_file1,
help="the destination dirctory is the curently working dirctory")
pars.add_argument("-a", "--arch", choices=("all", "i386", "x86_64"), type = lambda s : s.lower(),
help="Targeted check architecture: 32b, 64b, All")
pars.add_argument("-p", "--platform", choices=("all", "windows", "linux"), type = lambda s : s.lower(),
help="Targeted check platform: Windows, Linux, All")
args = pars.parse_args()
我想在命令行中解析输出,例如:
python script.py -o C:/Users/michael/Documents/install -a all -p windows
我不知道如何将输出存储到变量中。 我该怎么办?
答案 0 :(得分:1)
您可以使用以下方法访问参数:
正如您在注释中建议的那样,您所需要做的就是访问-输出或 -o ,将您的add_argument更改为类似于我在下面添加的内容
pars.add_argument("-o", "--output", default=destination_file,
help="the destination dirctory is the curently working dirctory")
platform = args.platform
architecture = args.arch
output = args.output
依此类推,对于您要访问的任何其他参数,应该在args变量中可用。浏览文档以获取更多信息 Documentation
答案 1 :(得分:0)
您可以获得使用vars(args)
传递的args的字典。 args.parse_args()
返回Namespace object,然后可以在其上使用vars(args)
以获得字典。使用https://docs.python.org/3/tutorial/datastructures.html了解如何操作字典。
如果您不想了解字典或想保持简单,则其他答案可能会更好:)