Курс 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. Возврат нескольких значений из функции
  2. Определение объема памяти объекта
  3. Ветвление выражения в Python
  4. Работа с индексами списков
  5. Сериализация данных в JSON с помощью json.dumps
  6. Инициализация переменных
  7. Отправка HTTP-запросов в Python
  8. Асинхронное выполнение задач в Python
  9. Создание итератора
  10. Генерация случайных чисел в Python
  11. Тестирование с unittest
  12. Типы возвращаемых значений в Python
  13. Работа с географическими данными в Python
  14. Утечки переменных цикла в Python 3.x
  15. Создание виртуальной среды
  16. Функциональное программирование в Python
  17. Капитализация строк
  18. Создание словаря через dict comprehension
  19. Мониторинг памяти с Pympler
  20. Оптимизация методов в Python 3.7
  21. Функции any() и all() в Python
  22. Изменение IP-адреса в Python
  23. Python Calendar Usage
  24. Контроль точности вывода чисел
  25. Работа с классами данных
  26. Очистка списка от False, None, 0, «»
  27. Создание лямбда-функций
  28. Сортировка данных с лямбда-функциями
  29. Обработка исключений
  30. Python Метод sleep() из time
  31. Декораторы в Python
  32. Комплексные числа в Python
  33. Показ всплывающих окон Tkinter
  34. Многострочные комментарии в Python
  35. Абстракции словарей и множеств в Python
  36. Метод init в Python
  37. Преобразование генераторов в циклы
  38. Конкатенация строк с помощью join()
  39. Многострочные строки в Python
  40. ROT13 Шифр Цезаря в Python
  41. Форматирование строк в Python
  42. Defaultdict в Python
  43. Методы split() и join() — Python строк.
  44. Функция zip() в Python
  45. Работа со строками в Python
  46. Пустой оператор pass в Python

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