functools.partialfunctools.partial — это функция высшего порядка из модуля functools в Python. Она позволяет создать новый вызываемый объект путём предварительного заполнения одного или нескольких аргументов существующей функции, снижая количество аргументов, необходимых при вызове.
Когда ты вызываешь partial(func, *args, **kwargs), она возвращает новый объект функции, который ведёт себя как func, но с уже привязанными указанными аргументами. Оставшиеся аргументы можно передать при вызове новой функции.
from functools import partial
def multiply(x, y):
return x * y
# Предварительно заполняем 'y' значением 2, чтобы создать функцию "double"
double = partial(multiply, y=2)
print(double(5)) # Output: 10
print(double(10)) # Output: 20
functools.partial способствует переиспользованию кода и следует принципу DRY (Don't Repeat Yourself). Это особенно полезно при работе с колбэками, map() или в любом сценарии, где нужна фиксированная конфигурация функции, используемая несколько раз.
functools.partial возвращает новый объект функции, который постоянно изменяет сигнатуру исходной функции, удаляя предзаполненные параметры.
Новый — ещё не проверен сообществом
Вы