Курс Python → Частичное применение функций в Python

Частичное применение функций — это мощный инструмент функционального программирования, который позволяет создавать новые функции на основе уже существующих, изменяя их поведение путем фиксации некоторых параметров. В Python для реализации частичного применения функций мы можем использовать функцию partial из модуля functools.

Применение функции partial позволяет создать новую функцию, которая принимает меньшее количество аргументов, чем исходная функция. Например, если у нас есть функция, которая принимает два аргумента, мы можем использовать partial, чтобы создать новую функцию, которая принимает только один аргумент, фиксируя значение для второго аргумента.

Для использования partial необходимо импортировать его из модуля functools и передать ему функцию, для которой мы хотим создать частичное применение, а также значения аргументов, которые мы хотим зафиксировать. Например, если у нас есть функция add, которая складывает два числа, мы можем создать новую функцию add_5, которая всегда будет складывать с числом 5.

from functools import partial

def add(x, y):
    return x + y

add_5 = partial(add, 5)
print(add_5(3))  # Вывод: 8

В данном примере мы создали функцию add_5, которая является результатом частичного применения функции add с фиксированным значением аргумента 5. При вызове add_5(3) мы получаем результат 8, так как 3 + 5 = 8.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Модуль pprint
  2. Изменение логики работы с временем
  3. Проверка наличия элемента в списке
  4. Пустой оператор pass в Python
  5. Применение функции к списку
  6. Генератор списка в Python
  7. Python и Монти Пайтон
  8. Генерация строк с .join()
  9. Декоратор для группы пользователей в Django
  10. Измерение времени выполнения
  11. Создание треугольника Паскаля
  12. Комментарии в Python
  13. Закрытие файла в Python
  14. Numpy: разбиение массивов
  15. Сериализация и десериализация объектов
  16. Функции в одну строку
  17. Генерация случайных чисел в Python
  18. Работа с срезами в Python
  19. Форматирование строк в Python
  20. Блок try-except-else
  21. Упрощение работы с JSON-данными в Python
  22. Отступы в Python
  23. Списковое включение в Python
  24. Обработка данных в Python
  25. Метод join() для объединения элементов строки
  26. Транспонирование 2D-массива с помощью zip
  27. Переворот строки
  28. Модуль os в Python: работа с файлами
  29. Нахождение отличий в списках
  30. Генераторы в Python
  31. Объединение коллекций в Python
  32. Определение локальных переменных в Python
  33. Получение текущего времени в Python
  34. Создание именованных кортежей в Python
  35. Pillow: работа с изображениями
  36. Создание генераторов в Python
  37. Итерации в Python
  38. Область видимости переменных
  39. Нан-рефлексивность в Python
  40. Оптимизация сравнения в Python
  41. Сортировка данных с лямбда-функциями
  42. Пересечение списков с использованием множеств
  43. Хэш-функции и метод цепочек
  44. Атрибуты класса и экземпляра
  45. Defaultdict в Python
  46. Генерация ключей RSA
  47. GitHub в Telegram: подписка на уведомления

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