Встроенная функция Python filter()

Из документации Python 3

Создает итератор из тех элементов итерируемого объекта, для которых функция возвращает true. Итерируемый объект может быть последовательностью, контейнером, поддерживающим итерацию, или итератором. Если function равно None, предполагается функция тождества, то есть удаляются все элементы итерируемого объекта, которые являются ложными.

Introduction

Функция filter() в Python — это встроенная функция, которая позволяет обрабатывать итерируемый объект и извлекать те элементы, которые удовлетворяют определенному условию. Она возвращает итератор с элементами, соответствующими критериям.

Syntax

filter(function, iterable)
  • function: Функция, которая будет выполняться для каждого элемента в итерируемом объекте. Она должна возвращать True или False для каждого элемента.
  • iterable: Итерируемый объект для фильтрации, например список, кортеж или строка.

Description

Функция filter() создает итератор из тех элементов итерируемого объекта, для которых функция возвращает True. Если функция равна None, она удаляет все ложные элементы итерируемого объекта.

Example

def is_even(num):
    return num % 2 == 0

numbers = [1, 2, 3, 4, 5, 6]
even_numbers = list(filter(is_even, numbers))
print(even_numbers)
[2, 4, 6]

В этом примере определяется функция is_even, чтобы определить, является ли число четным или нет. Метод filter принимает два аргумента: первый аргумент — это функция, применяемая к каждому элементу списка, а второй аргумент — это список, который нужно отфильтровать. Метод filter возвращает итератор, который затем преобразуется в список и сохраняется в переменной even_numbers. Конечным результатом является список четных чисел из исходного списка.

  • map(): Применяет функцию к каждому элементу итерируемого объекта и возвращает итератор с результатами.
  • iter(): Возвращает объект итератора.
  • List Comprehensions: Краткий способ создания списков, часто используемый как альтернатива filter().
  • Comprehensions
  • Functions
  • reduce()