Я реализую программу командной строки с таким интерфейсом:
cmd [GLOBAL_OPTIONS] {command [COMMAND_OPTS]} [{command [COMMAND_OPTS]} ...]
Я просмотрел документацию argparse. Я могу реализовать GLOBAL_OPTIONS как необязательный аргумент, используя add_argument в argparse. И {command [COMMAND_OPTS]}, используя Sub-commands.
Из документации кажется, что у меня может быть только одна подкоманда. Но, как вы видите, мне нужно реализовать одну или несколько подкоманд. Каков наилучший способ проанализировать такие аргументы командной строки, используя argparse?