map(), filter(), reduce()
map()
map
застосовує функцію до всіх елементів списку:
Необхідно передати всі елементи списку в функцію один за одним і зібрати значення, що повертаються в новий список. Наприклад:
map
дозволяє виконати це завдання елегантним способом:
❓А це не є простішим аналогом map’у:
Найчастіше з map
застосовують анонімні функції, як у прикладі вище. Замість списку вхідних даних також можна використовувати список функцій:
filter()
filter
повертає список елементів, для яких задана функція повертає True
:
filer
є вбудованою функцією і працює швидше, ніж цикл.
reduce()
reduce
дуже корисна функція для виконання обчислень на списку та повернення єдиного результату. Вона згортає список, застосовуючи отриману як аргумент функцію по черзі до послідовних пар елементів. Наприклад, якщо ми хочемо порахувати добуток всіх елементів списку чисел.
Звичайним вирішенням цього завдання буде використання циклу for
:
reduce
:
Last updated