Дана функция def endpoint(path, **kwargs): return kwargs. Что вернет вызов endpoint('/users', limit=10, sort='asc')?

A['limit', 'sort']
B('limit', 10, 'sort', 'asc')
C{'limit', 'sort'}
D{'limit': 10, 'sort': 'asc'}
Правильный ответ. **kwargs собирает именованные аргументы в словарь dict.

Разбор

Параметр **kwargs означает: «собери все именованные аргументы, которые не перечислены явно, в словарь». В примере kwargs будет {'limit': 10, 'sort': 'asc'}. Это удобно для функций-оберток, логирования, проброса опций и построения гибких API, но злоупотреблять этим не стоит: основные параметры лучше делать явными.

Проверь себя · 1/3разбор после ответа
Есть функция def f(a, b): return a + b. Что произойдет при вызове f(1, a=2)?
Тренировать Python в Telegram

Ещё вопросы по теме «Функции и аргументы»