Итак, у меня есть скрипт на Python для разбора и отображения данных из текстовых файлов. Обработка аргументов осуществляется с помощью модуля argparse. Проблема в том, что некоторые аргументы являются необязательными, например. один из них используется для добавления текстовых аннотаций на график. Этот аргумент отправляется функции построения графика через **kwargs. Мой вопрос: каков самый питонический способ обработки этих необязательных аргументов? Какой-то псевдокод здесь:
parser = argparse.ArgumentParser()
...
parser.add_argument("-o", "--options", nargs="+", help="additional options")
args = parser.parse_args()
...
def some_function(arguments, **kwargs):
doing something with kwargs['options']
return something
...
arguments = ...
some_function(arguments, options=args.options)
Если параметры не указаны, по умолчанию присваивается значение None. И это вызывает некоторые проблемы. Что более питонично - как-то проверить «опции» в some_function? Или, может быть, разобрать аргументы перед вызовом some_function?
argparse
аргументов вkwargs
или о принятии словаря, такого как входные данные, которые могут быть переданы. Ваш аргументoptions
просто создает список строк. - person hpaulj   schedule 06.09.2016argparse
сkwargs
: stackoverflow.com/questions/33712615/ - person hpaulj   schedule 06.09.2016