Например вводим два значения и сравниваем их, но хотим иметь возможность ввести значения в терминале либо прочитать из файла.
Такой код при запуске командой
python main.py compare -xfile xfile.txt -yfile xfile.txt
выдает ошибку о том что требуются x и y:
# main.py
parser = argparse.ArgumentParser()
subparsers = parser.add_subparsers(help='tools')
parser_tool = subparsers.add_parser('compare')
parser_tool.add_argument('x')
parser_tool.add_argument('y')
# Или например хочу читать аргументы из файлов
parser_tool.add_argument('-xfile')
parser_tool.add_argument('-yfile')
Но возьмем pip и там мы можем либо pip install lib_name либо pip install -r requirements.txt
Посмотрел исходник pip и так понял что там используется click, а можно ли реализовать такое поведение на argparse?