Что такое filter в Python
Python
Middle
Без компании
Что такое filter в Python
Ответы
Функция `filter()` в Python применяет указанную функцию к каждому элементу итерируемого объекта и возвращает итератор с элементами, для которых функция вернула `True`. Если функция не указана, возвращаются элементы, которые сами по себе оцениваются как `True`.
Синтаксис:
```
filter(function, iterable)
```
Пример с функцией:
```
numbers = [1, 2, 3, 4, 5]
even_numbers = filter(lambda x: x % 2 == 0, numbers)
print(list(even_numbers)) # [2, 4]
```
Пример без функции (фильтрация `None` и `False`):
```
values = [0, 1, None, False, "", "hello"]
filtered = filter(None, values)
print(list(filtered)) # [1, "hello"]
```
Фильтр ленивый — возвращает итератор, поэтому для вывода результата часто используется `list()`.