Заставить argparse одинаково обрабатывать тире и подчеркиваниеPython

Программы на Python
Ответить
Anonymous
 Заставить argparse одинаково обрабатывать тире и подчеркивание

Сообщение Anonymous »

Код: Выделить всё

argparse
заменяет тире в необязательных аргументах подчеркиванием, чтобы определить их назначение:

Код: Выделить всё

import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--use-unicorns', action='store_true')
args = parser.parse_args(['--use-unicorns'])
print(args)  # returns: Namespace(use_unicorns=True)
Однако пользователь должен помнить, какая опция — --use-unicorns или --use_unicorns; использование неправильного варианта приводит к ошибке.

Это может вызвать некоторое разочарование, поскольку переменная args.use_unicorns в коде не дает понять, какой вариант был определен. .

Как я могу заставить argparse принимать --use-unicorns и --use_unicorns как допустимые способы определения этого необязательный аргумент?

Подробнее здесь: https://stackoverflow.com/questions/535 ... dentically
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»