Курс 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. Конвертация изображений в PDF
  2. Отправка POST запроса на сервер.
  3. Метод join() для объединения элементов строки
  4. Объединение кортежей в Python
  5. Работа со стеком в Python
  6. Работа с NumPy.linalg
  7. Получение идентификатора объекта в памяти
  8. Проверка версии Python
  9. Переворот строки с помощью срезов
  10. Метод setdefault() в Python
  11. Курс Data Scientist в медицине
  12. Преобразование данных в Python
  13. Определение относительного пути
  14. Профилирование данных с Pandas.
  15. Логирование с Loguru
  16. Сортировка в Python
  17. Работа с файловой системой в Python
  18. Метод rlshift для битового сдвига
  19. Измерение времени выполнения кода с использованием time
  20. Переопределение метода sub
  21. Создание и обучение модели с Keras
  22. Оператор (*) в Python
  23. Измерение времени выполнения кода
  24. Работа с областями видимости переменных
  25. Лямбда-функции в цикле
  26. Метод lt для сортировки объектов
  27. Декодирование байтов в строку
  28. Списки в Python: основы
  29. Библиотека Chartify: руководство
  30. Форматирование строк с помощью f-строк
  31. Хранение данных
  32. Хеширование паролей с использованием salt
  33. Обновление и получение данных в SQLite
  34. Управление IP-адресами через прокси
  35. Решатель судоку на Python с pygame
  36. Избегайте пустого списка
  37. Метод Enumerate() для списков
  38. Проблемы с именами переменных
  39. Частичное совпадение ввода
  40. Цикл for в Python
  41. Подсчет элементов с помощью Counter
  42. Обновление ключей в Python
  43. Декодирование строк в Python
  44. Использование type hints
  45. Преобразование регистра символов
  46. Работа с модулем bisect

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