Я пытаюсь написать сценарий, который принимает несколько источников ввода и что-то делает с каждым из них. Что-то вроде этого
./my_script.py \
-i input1_url input1_name input1_other_var \
-i input2_url input2_name input2_other_var \
-i input3_url input3_name
# notice inputX_other_var is optional
Но я не совсем понимаю, как это сделать с помощью argparse
. Кажется, что он настроен так, что каждый флаг опции может использоваться только один раз. Я знаю, как связать несколько аргументов с одним параметром ( nargs='*'
или nargs='+'
), но это все равно не позволяет мне использовать -i
флаг несколько раз. Как мне это сделать?
Чтобы быть ясным, в конце я хотел бы получить список списков строк. Так
[["input1_url", "input1_name", "input1_other"],
["input2_url", "input2_name", "input2_other"],
["input3_url", "input3_name"]]