Я пишу скрипт, который может делать несколько вещей, в зависимости от аргументов, передаваемых в командной строке.Например:
#changed and simplified from actual code
parser.add_argument('-a','--apple')
parser.add_argument('-b','--boy')
parser.add_argument('-c', '--car')
parser.add_argument('-d', '--dog')
args = parser.parse_args()
Мне нужен только 1 аргумент в командной строке.Таким образом, будет принят только один из -a,-b,-c,-d
, и тогда код будет выполняться в зависимости от того, какой аргумент был передан.
Я могу сделать это с помощью ряда операторов if, например
if args.a:
if args.b:
и т.д..Есть ли лучший способ приблизиться к этому?
Для каждой опции командной строки (-a,-b,-c,-d
) я хотел бы передать некоторые аргументы. Эти аргументы будут конкретными и будут варьироваться в зависимости от начальной командной строкивариант.Например:
python test.py -a apple aardvark aquaman
Я подумал об использовании nargs
, но я не был уверен, как сделать так, чтобы каждый аргумент был
- в правильном порядке и
- аргумент, который необходим.В приведенном выше примере, предполагая, что количество дополнительных необязательных аргументов будет равно 3, я хочу убедиться, что все аргументы начинаются с буквы
a
.
Как я могу подойти к этому?