Курс Python → Функциональное программирование.

Функциональное программирование — это парадигма программирования, основанная на использовании функций как основных элементов программы. Она позволяет писать более краткий и читаемый код, что делает его более поддерживаемым и расширяемым. Один из ключевых инструментов функционального программирования — это функции высшего порядка.

Функции высшего порядка — это функции, которые могут принимать другие функции в качестве аргументов или возвращать их как результат. Они позволяют абстрагировать общие шаблоны кода, делая его более универсальным. Примером функции высшего порядка является функция map, которая применяет заданную функцию ко всем элементам итерируемого объекта.


# Пример использования функции map
numbers = [1, 2, 3, 4, 5]
squared = list(map(lambda x: x**2, numbers))
print(squared)  # Вывод: [1, 4, 9, 16, 25]

Еще одним инструментом функционального программирования является анонимные функции, или лямбда-функции. Они позволяют создавать функции «на лету», без необходимости определения их имени. Лямбда-функции обычно используются вместе с функциями высшего порядка, такими как map или filter.


# Пример использования лямбда-функции вместе с функцией filter
numbers = [1, 2, 3, 4, 5]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers)  # Вывод: [2, 4]

Кроме того, функциональное программирование предлагает инструменты для работы с последовательностями данных, такие как reduce. Функция reduce применяет указанную функцию кумулятивно к элементам последовательности, сокращая ее до одного значения. Это позволяет упростить обработку данных и выполнение сложных операций.


from functools import reduce
numbers = [1, 2, 3, 4, 5]
sum_of_numbers = reduce(lambda x, y: x + y, numbers)
print(sum_of_numbers)  # Вывод: 15

Использование функционального программирования в Python может значительно улучшить структуру и читаемость вашего кода. Знание функций высшего порядка, анонимных функций, map, filter, reduce и других инструментов функционального программирования позволит вам писать более компактный, элегантный и эффективный код.

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

Автор урока

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

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

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

  1. Тайное преобразование типа ключа
  2. Преобразование списков в словарь
  3. Упрощение работы с JSON-данными в Python
  4. Многострочные комментарии в Python
  5. Метод сравнения объектов в Python
  6. JMESPath в Python
  7. Метод сравнения объектов в Python
  8. Поиск всех индексов подстроки
  9. Преобразование вложенного списка
  10. Атрибуты класса и экземпляра в Python
  11. Бинарный поиск
  12. Очистка списка от False, None, 0, «»
  13. Декоратор Property в Python
  14. Работа с путями в Python
  15. ChainMap.new_child() — добавление нового словаря
  16. Определение индекса элемента списка
  17. Оператор in для проверки наличия элемента
  18. Анализ текста на русском языке с помощью Pymystem3
  19. Оператор in в Python
  20. Переменная Шредингера
  21. CSV строка разделение в Python
  22. Обработка ошибки IndexError
  23. Сериализация данных в JSON с помощью json.dumps
  24. Метод __ilshift__ для битового сдвига влево
  25. Цикл for с enumerate() в Python
  26. Метод join() с набором
  27. Изучение объектов с помощью dir()
  28. Подсказки при вводе данных в Python
  29. Создание функций высшего порядка
  30. Возврат нескольких значений из функции
  31. Python enumerate() для работы с индексами
  32. Python и Монти Пайтон
  33. Очистка вывода в Python
  34. Создание таблиц в Python с PrettyTable
  35. Метод split() в Python
  36. Метод clear для коллекций
  37. Создание словарей и множеств в Python.
  38. Частичное совпадение пользовательского ввода в Python 3.10
  39. Работа с Enum в Python3.
  40. Применение функции map() в Python
  41. Асинхронное выполнение задач в процессах
  42. Работа с YAML в Python
  43. Методы __repr__ и __str__ в Python
  44. Особенности ключей словаря в Python
  45. Работа с базами данных SQLite
  46. Область видимости переменных

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