Python Varargs перед именем функции? - PullRequest
2 голосов
/ 04 октября 2009

Я делаю некоторое кодирование Python в клиентской кодовой базе и наткнулся на строку кода, которая выглядит примерно так (имена переменных были изменены, чтобы защитить невинных):

reply = function1(a=foo, **function2(bar, b=baz))

Обычно ** в списке аргументов собирает оставшиеся ключевые аргументы, но что они делают перед именем функции?

1 Ответ

11 голосов
/ 04 октября 2009

Я бы сказал, что это просто вызов функции, которая возвращает объект, похожий на dict, и поэтому звездочки просто преобразуют возвращенный dict в ключевые аргументы для function1, как обычно.

...