Вы можете использовать **kwargs
, чтобы ваши функции принимали произвольное количество аргументов ключевого слова («kwargs» означает «аргументы ключевого слова»):
>>> def print_keyword_args(**kwargs):
... # kwargs is a dict of the keyword args passed to the function
... for key, value in kwargs.iteritems():
... print "%s = %s" % (key, value)
...
>>> print_keyword_args(first_name="John", last_name="Doe")
first_name = John
last_name = Doe
Вы также можете использовать синтаксис **kwargs
при вызове функций путем построения словаря аргументов ключевого слова и передачи его в вашу функцию:
>>> kwargs = {'first_name': 'Bobby', 'last_name': 'Smith'}
>>> print_keyword_args(**kwargs)
first_name = Bobby
last_name = Smith
Учебник Python содержит хорошее объяснение того, как он работает, а также некоторые приятные примеры.
& lt; - Update ->
Для пользователей, использующих Python 3, вместо iteritems (), используйте пункты ()