LINUX.ORG.RU

Python - аргументы функции в виде словаря


0

1

в одной библиотеке есть такая фунцкия:

def foo(bar, **params):
    ...

поэтому приходится вызывать ее так:

foo("Central Park", arg1="eat", arg2="a", arg3="banana", arg4=",", arg5="monkey!")

внимание, вопрос
можно ли как-нибудь в питоне написать функцию-обертку над foo так, чтобы можно было все эти аргументы передать в виде одного словаря?

т.е. как-то так:

context = {'arg1':'eat', 'arg2':'a', 'arg3':'banana', 'arg4':',', 'arg4':'monkey!'}
sugar_foo(bar, context)

при этом сама функция foo - чёрный ящик, ее алгоритм не известен и манкипатчить ее тоже нельзя.

Ответ на: комментарий от Shtucer

оказывается всего-то надо было написать так

context = {'arg1':'eat', 'arg2':'a', 'arg3':'banana', 'arg4':',', 'arg4':'monkey!'}
foo(bar, **context)

спасибо, вопрос закрыт!

Sosiska
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.