Курс 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. Списки в Python: основы
  4. Уникальность ключей в словаре
  5. Генераторы в Python
  6. Поиск подстроки в строке
  7. Создание Telegram-бота на Python
  8. UserList в Python: Описание и примеры использования
  9. Удаление элементов из списка в Python
  10. Работа с argparse
  11. Импорт с альтернативным именем
  12. Очистка входных данных
  13. Хеширование паролей с солью
  14. Вывод сложных структур данных с помощью pprint
  15. Работа с геоданными с помощью geopy
  16. Объединение строк с помощью метода join
  17. Генерация случайных чисел в Python
  18. Регистрация на хакатоне
  19. Генерация случайных чисел в Python
  20. Функция rsplit() в Python
  21. Обработка ошибок в JSON данных
  22. Работа с CSV файлами в Python
  23. Названия переменных
  24. Создание списка через цикл
  25. Резервирование символов в Python
  26. Декоратор Ajax required
  27. CSV строка разделение в Python
  28. Функция map() и ленивая оценка
  29. История Python
  30. Поиск частого элемента
  31. Присвоение значений переменным в Python
  32. Метод count в Python: почему count(», ») возвращает 4?
  33. Объединение списков в Python
  34. Метод Self в Python
  35. Повторение элементов списков
  36. Получение значений из словарей
  37. Область видимости переменных
  38. Представление бесконечности в Python
  39. Атрибуты массивов в Numpy
  40. Форматирование даты с strftime()
  41. Работа с кортежами в Python
  42. Основы работы со списками
  43. Избегайте пустого списка
  44. Преобразование букв в нижний регистр
  45. Итерация по копии коллекции
  46. Принципы SRP и OCP
  47. Сравнение def и lambda-функций
  48. Работа с прокси в Python
  49. Поиск индекса элемента

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