Назад к вопросам
Senior
7
Что такое *args и **kwargs в Python?
Компании, где спрашивали
Лаборатория Касперского
Ответ от нейросети
sobes.tech AI
В Python *args и **kwargs используются для передачи переменного количества аргументов в функцию.
*argsсобирает позиционные аргументы в кортеж.**kwargsсобирает именованные аргументы в словарь.
Это позволяет писать функции, которые принимают любое количество аргументов.
Пример:
def func(*args, **kwargs):
print('Позиционные аргументы:', args)
print('Именованные аргументы:', kwargs)
func(1, 2, 3, a=4, b=5)
Вывод:
Позиционные аргументы: (1, 2, 3)
Именованные аргументы: {'a': 4, 'b': 5}
Это удобно для создания обобщённых интерфейсов, проксирования вызовов и расширения функционала без изменения сигнатуры функции.