【发布时间】:2020-08-04 14:51:23
【问题描述】:
最后的想法是使用如下命令启动我的 python 程序:
python.exe -m myProgram execute --tags arg1 arg2 arg3
我正在尝试在列表中获取“arg_1”、“arg_2”、...、“arg_n”(n 未知)并通过“tags”访问所有这些
我尝试了一些方法,例如:
def run(self, **kwargs) -> None:
tags = []
for arg in kwargs.values():
tags = tags.append(kwargs.get("tags", None))
print(tags)
或者:
def run(self, **kwargs) -> None:
tags = kwargs.get("tags", None)
但我无法得到预期的结果。 我应该更改我的命令还是是否存在获取列表等标签的方法? 请问,有什么帮助吗? 谢谢
【问题讨论】:
-
你用什么来获取输入参数的?
-
你可能想看看这个问题stackoverflow.com/questions/15753701/…
-
使用python自带的参数解析器
argparse。特别是nargs='*'。有任何理由拥有--tags吗?消费参数列表中的所有项目似乎--tags是不必要的。 -
谢谢你们,我会读完所有的。 @AChampion,我可能需要添加其他名称的其他参数。
--tags就是一个例子。 @Riccardo,谢谢你的链接。寻找kwargs,我没有找到/想到argparse。