Курс Python → Создание новых функций через partial
Функция partial в Python из модуля functools позволяет создавать новые функции на основе уже существующих, фиксируя определенные аргументы. Это удобно, когда мы хотим создать функцию, которая является вариацией другой функции, но с некоторыми аргументами, которые уже заданы заранее.
Например, в предложенной инструкции мы используем функцию partial для создания двух новых функций double и triple на основе функции multiply. Мы фиксируем аргумент y на значениях 2 и 3 соответственно. Теперь новые функции могут быть вызваны с одним аргументом, в то время как фиксированный аргумент y уже задан.
from functools import partial
def multiply(x, y):
return x * y
double = partial(multiply, y=2)
triple = partial(multiply, y=3)
print(double(5)) # Вывод: 10
print(triple(5)) # Вывод: 15
В данном примере мы используем функцию multiply, которая умножает два числа. Затем, с помощью partial, мы создаем новые функции double и triple, которые уже имеют фиксированное значение для аргумента y. При вызове этих новых функций с одним аргументом, они будут умножать его на соответствующее фиксированное значение, возвращая результат.
Использование функции partial позволяет нам более гибко управлять функциями и их аргументами, делая код более компактным и читаемым. Мы можем создавать новые функции на основе уже существующих, изменяя их поведение с помощью фиксированных значений аргументов и сохраняя при этом структуру и логику исходных функций.
Другие уроки курса "Python"
- Работа с timedelta
- Проверка существования переменной с оператором :=
- Работа с коллекциями Python
- Создание циклической ссылки
- Сумма элементов списка
- Отправка POST-запроса в REST API
- Настройка нарезки списков
- Фильтрация последовательности
- Работа с CSV файлами в Python
- Библиотека sh: использование команд bash в Python
- Получение ID процесса
- Роль object и type в Python
- Решение переменной Шредингера
- Комплексные числа в Python
- Очистка строки в Python
- Лямбда-функции в Python
- Разбиение текста в Python
- Объединение словарей в Python
- Идентификатор объекта в Python
- Подсчет элементов в Python
- Установка библиотек в Python
- Область видимости переменных
- Моржовый оператор в Python 3.8
- Работа с аргументами командной строки в Python
- Гибкие функции Python
- Декораторы с @wraps
- Работа с итераторами в Python
- Взаимодействие с sys
- Функция reversed() в Python
- Удаление элемента из списка в Python
- Удаление первого элемента списка
- Официальный канал Python в Telegram
- Enum в Python
- Оптимизация памяти в Python
- Эффективная конкатенация строк с использованием join()
- Абстракции словарей и множеств в Python
- Подписка на каналы разработчиков
- Метод gt в Python
- Обработка StopIteration в Python
- Имена объектов в Python
- Функция divmod() в Python
- Форматирование даты с strftime()
- Создание инструмента обнаружения плагиата
- F-строки в Python
- Оптимизация памяти с помощью __slots__















