Курс 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. Логирование в Python
  3. Доступ к локальным переменным
  4. Установка и использование Virtualenv
  5. Метод append() для списка
  6. Частичное применение функций в Python
  7. Создание лямбда-функций
  8. Работа с буфером обмена на Python
  9. Метод pos в Python
  10. Monkey Patching в Python
  11. Основные операции с Numpy
  12. Профилирование кода
  13. Использование defaultdict в Python
  14. Метод __getitem__ в Python
  15. Аннотации типов в Python
  16. Подсчет элементов в Python
  17. Работа с множествами в Python
  18. Итераторы в Python
  19. Переопределение метода xor в Python
  20. Структура данных словарь в Python
  21. Проверка подстроки в строке
  22. Namedtuple в Python
  23. Комплексные числа в Python
  24. Сравнение def и lambda функций в Python
  25. Разделение строки с помощью split()
  26. Метод __int__ в Python
  27. Инверсия списков и строк в Python
  28. Многопоточность в Python
  29. Добавление кнопки в tkinter
  30. Проверка файла .py на синтаксис.
  31. Хэш-функции в Python
  32. Поиск шаблона в строке
  33. HTTP-запросы с библиотекой Requests
  34. inspect в Python: анализ кода
  35. Функция zip() в Python
  36. Метод title() в Python
  37. Пустой оператор pass в Python
  38. Синхронизация потоков с time.sleep()
  39. Объединение списков с использованием itertools.chain
  40. Изменение регистра данных
  41. Очистка входных данных
  42. Создание циклической ссылки
  43. Инициализация объекта
  44. Использование модуля math
  45. Работа с enumerate()
  46. Обновление и получение данных в SQLite
  47. Декораторы с аргументами
  48. Генераторы в Python
  49. Парсинг веб-страниц с Beautiful Soup

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