functools.partial
Создаёт новую функцию с заранее заданной частью аргументов.
Python 3.13
functools.partial(func, /, *args, **keywords)Параметры
- funcCallable
- Исходная функция.
- *argsAny
- Позиционные аргументы, которые подставятся первыми.
- **keywordsAny
- Именованные аргументы; при вызове их можно переопределить.
Возвращаемое значение
Объект partial, который вызывается как обычная функция.
Примеры
Функция с готовым приветствием
Python 3.13
from functools import partial
def greet(greeting, name):
return f'{greeting}, {name}!'
hello = partial(greet, 'Hello')
print(hello('Anna'))Hello, Anna!
int с основанием 2
Python 3.13
from functools import partial
from_binary = partial(int, base=2)
print(from_binary('1010'))10
Подробности
Аргументы при вызове добавляются после заданных заранее. Именованные значения можно заменить при вызове: from_binary("12", base=10) даёт 12. Исходная функция и аргументы хранятся в атрибутах func, args и keywords.
