Задать вопрос

Каким образом можно в argparser python 2.x получать либо один обязательный аргумент, либо один опциональный?

Каким образом можно в argparser python 2.x получать ЛИБО один обязательный аргумент, ЛИБО один опциональный?
То есть
ЛИБО
python @имя_скрипта@ обязательный параметр
ЛИБО
python @имя_скрипта@ --необязательный параметр
  • Вопрос задан
  • 2801 просмотр
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Python-разработчик
    9 месяцев
    Далее
  • SF Education
    Бэкенд-разработчик на Python
    3 месяца
    Далее
Решения вопроса 1
maxaon
@maxaon
А в чем проблема?
from argparse import ArgumentParser

parser = ArgumentParser(usage="Here is usagage")
parser.add_argument("positional",nargs="*")
parser.add_argument("--flag")

if __name__ == "__main__":
    args = parser.parse_args()
    if args.positional and not args.flag:
        print("i'm positional")
    elif args.flag and not args.flag:
        print ("i'm flag")
    else:
        raise Exception("RTFM")
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы