Обновленный ответ:
Вы можете поместить знак равенства, когда вы его назовете:
python Application.py -env="-env"
Оригинальный ответ:
У меня тоже есть у вас были проблемы, которые вы делаете, но есть способ обхода в argparse, который является методом parse_known_args . Это позволит всем аргументам, которые вы не определили, пройти через парсер с предположением, что вы будете использовать их для подпроцесса. Недостатки в том, что вы не будете получать сообщения об ошибках с плохими аргументами, и вам нужно будет убедиться, что между вашими параметрами и параметрами вашего подпроцесса нет конфликта.
Другой способ может заключаться в том, чтобы заставить пользователя для использования плюса вместо минуса:
python Application.py -e "+s WHATEVER +e COOL STUFF"
, а затем вы меняете «+» на «-» в пост-обработке перед тем, как перейти к вашему подпроцессу.