Курс 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"

  1. Функция map() в Python
  2. Область видимости переменных
  3. Метод splitlines() для разделения строк
  4. Списковое включение в Python
  5. Капитализация строк
  6. Создание лямбда-функций
  7. Логирование в Python
  8. Декораторы в Python
  9. Изменение объектов в Python
  10. Функции map() и reduce() в Python
  11. Создание списков в Python
  12. Частичное совпадение ввода
  13. Управление ресурсами в Python
  14. Выборка чисел
  15. Форматирование строк в Python.
  16. Объединение списков в Python
  17. Печать комбинаций в Python с Itertools
  18. Преобразование данных в Python
  19. Генератор списка с условием if
  20. Обмен данными с asyncio.Queue
  21. Pillow: работа с изображениями
  22. Руководство по использованию Colorama
  23. %pinfo: получение информации об объекте
  24. Реализация операции -= для пользовательского класса
  25. Работа с часовыми поясами в Python.
  26. Итерация по итерируемым объектам
  27. Установка и обучение ChatterBot
  28. Работа с срезами в Numpy
  29. Очистка строки в Python
  30. Методы работы со списками
  31. Многострочные строки в Python
  32. Использование модуля __future__
  33. Метод join() для объединения элементов
  34. Объединение словарей в Python
  35. Работа с итераторами в Python
  36. Именование столбцов в Python с pandas
  37. Списковые включения в Python
  38. Сериализация и десериализация объектов
  39. Асинхронное программирование с asyncio
  40. Принцип одной функции
  41. Метод split() в Python
  42. Подписка на @SelectelNews

Marketello читают маркетологи из крутых компаний