# Функция filter для фильтрации объектов в Python

Давайте теперь изучим функцию `filter`. Она позволяет отфильтровать элементы списков и прочих итерируемых объектов по какому-либо условию. Первым параметром она принимает функцию, которая задает условие для проверки. Во втором параметре указывают список, элементы которого будут фильтроваться. Если функция возвращает `True`, то элемент остается в новом списке. Если возвращается `False`, то элемент не войдет в список.

Пусть у нас есть список:

`lst = [1, 2, 3, 4, 5, 6]`

Давайте оставим в нем только четные числа. Для этого с помощью лямбда-функции пропишем, чтобы переданное в ее параметр число делилось на: `2` без остатка:

`res = filter(lambda num: num % 2 == 0, lst) print(list(res))`

После выполнения кода вернется новый список:

`[2, 4, 6]`

Дан список с числами:

`lst = [1, 2, 3, 4, 5]`

Запишите в новый список только нечетные числа из этого списка.

Дан список со строками:

`lst = ['abcd', 'ab', 'c', 'de', 'bc']`

Запишите в новый список только строки, длина которых равна `2`.

← →
↑