【发布时间】:2020-08-19 12:57:30
【问题描述】:
我正在尝试解析从命令行传递的参数。我总共传递了 15 个参数。我正在尝试通过给它们相同的目的地()来对它们进行分组,我需要对它们进行分组。现在,当我打印输入时,我得到列表 f.e [mylogo.png, otherlogo.png] 等等。我怎样才能得到类似于 {destination:'value1','value2'} 的结果。我知道我可以手动完成,但这不是我的解决方案..
parser = argparse.ArgumentParser(prog='Moodle automation', add_help= False,
description=description(), usage='nana nanan nana')
parser.add_argument('-logo', '--set_logo',
help='',
dest='branding',
type=str,
action='append')
parser.add_argument('-c_logo', '--set_compact_logo',
help='',
dest='branding',
type=str,
action='append'
)
web_status.add_argument('-wn', '--web_new',
help=" ",
dest='web_state',
action="append")
web_status.add_argument('-wo', '--web_old',
help="",
dest="web_state",
action="append")
args = parser.parse_args()
branding_details = args.branding
print(branding_details)
如果输入:
program.py -logo mylogo.png -c_logo custom_logo.png
我得到输出['mylogo.png', 'custom_logo.png']
【问题讨论】:
-
stackoverflow.com/questions/30487767/…?然后检查
args.arg1 is not None and args.arg2 is not None -
通过该设置,您将获得两个:
args.branding和args.web_state。使用append,您应该得到列表(如果不是默认的None)。 -
我认为你错过了有问题的重要部分。您究竟使用哪些语句来解析和打印通过命令行提供的参数?
-
web_status是什么?您的代码位留下了太多歧义。 -
@TejasSarade 我编辑了我的问题。复制粘贴问题..