Курс 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. Списки в Python: синтаксис представления
  2. Создание словарей с defaultdict()
  3. Создание списка дат
  4. Замена атрибута в именованном кортеже
  5. Динамическая типизация в Python
  6. Декораторы в Python
  7. Получение значений из словарей
  8. Создание словарей с defaultdict
  9. Зарезервированные слова в Python
  10. Создание вложенных циклов for
  11. Роль запятой в Python
  12. Модуль itertools: комбинации и перестановки
  13. Поиск email
  14. Поиск подстроки в строке
  15. Обмен переменными в Jupyter
  16. Нахождение самого длинного слова в списке с помощью max
  17. GitHub в Telegram: подписка на уведомления
  18. Разделение строки на пары ключ-значение.
  19. Переменная Шредингера
  20. Работа с JSON данными в Python
  21. Создание новых списков в Python
  22. Генераторные функции в Python
  23. Метод is_absolute() для PurePath
  24. Метод Event.wait() в Python
  25. Форматирование строк с f-строками
  26. ROT13 Шифр Цезаря в Python
  27. Хеширование паролей с использованием salt
  28. Операторы += в Python
  29. Делегирование в Python
  30. Метод ipow для возведения в степень
  31. Метод rsub в Python: расширение функциональности вычитания
  32. Работа с дробями в Python
  33. Генераторы в Python
  34. Работа с OpenCV
  35. Печать в одной строке
  36. Аргумент по умолчанию
  37. Создание и удаление объектов
  38. Отправка поздравлений по дню рождения
  39. Пересечение списков с использованием множеств
  40. Печать списка с помощью метода join
  41. Оператор морж в Python 3.8
  42. Mad Libs Generator
  43. Работа с CSV в Python
  44. Работа с библиотекой xkcd
  45. Цикл while в Python
  46. Удаление файлов в Python

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