Курс 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"
- Изменение регистра данных
- Lambda Functions in Python
- Скачать видео с YouTube
- Конкатенация строк с помощью join()
- Многострочные комментарии в Python
- Экспорт данных в файл.
- Отладчик pdb: начало работы
- Итерация по итерируемым объектам
- Метод gt в Python
- Python groupby() из itertools: работа с повторяющимися элементами
- Принципы Zen Python
- Python: возвращение нескольких значений
- Функция enumerate в Python
- Особенности множеств в Python
- Преобразование символов в нижний регистр
- Генерация UUID в Python
- Лямбда-функции в цикле
- Форматирование строк в Python
- Переопределение метода divmod
- Модуль pprint
- Retrying в Python: повторные вызовы
- Измерение времени выполнения кода с использованием time
- Подписка на каналы разработчиков
- Руководство по Pymorphy2
- Генерация QR-кодов с Python
- Операции с числами в Python
- Сортировка списка по индексам
- Рациональные числа в Python
- Работа со строками в Python
- Проблема с изменяемыми аргументами
- Поиск с библиотекой Google
- Работа с модулем glob в Python
- Python Enumerate
- Создание и использование ChainMap
- Многострочные строки в Python
- Наследование в программировании
- CSV строка разделение в Python
- Присоединение элементов коллекции
- Работа с многоуровневыми словарями в Python
- Метод join() для объединения элементов строки
- Именованные кортежи в Python
- Аннотации типов в Python
- Установка Python3.7 и PIP
- Python: изменяемые и неизменяемые коллекции
- Разработка Telegram-ботов
- Сортировка элементов в Python
- Оператор is в Python















