functools.partial
Создаёт новый вызываемый объект с частично зафиксированными аргументами исходной функции.
Сигнатура
functools.partial(func, /, *args, **keywords)partial «замораживает» часть аргументов, возвращая функцию, которой остаётся передать только остальные. Полезно для создания специализированных версий функций и колбэков.
from functools import partial
def power(base, exp):
return base ** exp
square = partial(power, exp=2)
cube = partial(power, exp=3)
print(square(5)) # 25
print(cube(2)) # 8
int2 = partial(int, base=2)
print(int2('1010')) # 10