Функція filter() в Python

 7241

Функція filter() вибирає елементи з ітерованого об’єкта (список, кортеж тощо) на основі вихідних даних функції. Функція застосовується до кожного елемента ітерованого об’єкта, і якщо вона повертає True, то елемент буде обраний функцією filter().

Наприклад:

Результат:

[2, 4, 6, 8, 10]

Синтаксис функції filter()

Параметри функції filter()

Функція filter() приймає два параметри:

   function — функція;

   iterable — ітерований об’єкт, такий як множини, списки, кортежі тощо.

Значення, яке повертає функція filter()

Функція filter() повертає ітератор.

Примітка: Ви можете легко перетворити ітератори на послідовності, такі як списки, кортежі, рядки й т.д.

Приклад №1: Робота функції filter()

Результат:

('a', 'e', 'i', 'o')

Тут функція filter() отримує лише голосні літери зі списку letters. Ось як працює цей код:

   кожен елемент списку letters передається у функцію filter_vowels();

   якщо функція filter_vowels() повертає True, цей елемент вилучається, в протилежному випадку він ігнорується.

Примітка: Фільтрувати списки також можна за допомогою циклу, проте використання функції filter() набагато простіше.

Приклад №2: Використання лямбда-функції всередині функції filter()

Результат:

[2, 4, 6]

Тут ми безпосередньо передали лямбда-функцію всередині функції inside(). Наша лямбда-функція повертає True для парних чисел. Отже, функція filter() повертає ітератор, який містить лише парні числа.

Приклад №3: Використання None як функції усередині функції filter()

Результат:

[1, 'a', True, '0']

Коли None використовується як перший аргумент функції filter(), вилучаються всі елементи, які є True (при перетворенні в логічні значення мають значення True).

Оцінити статтю:

1 Зірка2 Зірки3 Зірки4 Зірки5 Зірок (5 оцінок, середня: 5,00 з 5)
Завантаження...

Залишити відповідь

Ваш E-mail не буде опублікований. Обов'язкові поля відмічені *