Курс 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"
- Python reversed() функция
- Пересечение списков с использованием множеств
- Логирование с Loguru
- Сглаживание списка
- Прокачанный трейсинг ошибок
- Тестирование модели в PyTorch
- Основы Python за 14 дней
- Оператор in и not in в Python
- Метод __irshift__ для Python
- Получение обратного списка чисел
- ROT13 Шифр Цезаря в Python
- Форматирование вывода списков
- Срезы в Numpy
- Создание итератора
- Импорт модуля из другого каталога
- Передача параметров в Python
- Циклы в Python
- Обратный список чисел
- Метод rsub для пользовательских чисел
- Обработка исключений в Python
- Работа с GitHub в Telegram
- Эффективная конкатенация строк с использованием join()
- Ускорение обработки данных с %autoawait
- Оптимизация памяти с __slots__
- Метод add для класса Vector
- Комментарии в Python
- Модуль future Python
- Работа с функцией next() в Python
- Defaultdict в Python
- Извлечение новостей с newspaper3k
- Работа с базами данных SQLite
- Beautiful Soup — извлечение данных из HTML
- Наиболее частотные элементы с помощью Counter
- Перемешивание списка с shuffle()
- Идентификатор объекта в Python
- Установка и загрузка Instaloader
- Извлечение чисел из текста
- Заказ карты Тинькофф Black
- Тип CodeType в Python.
- Тестирование времени с Freezegun
- Работа с контекстными менеджерами
- Атрибуты массивов в Numpy
- Создание новых списков
- Работа с временем в Python
- Проверка кортежей.















