Функция filter
Функция filter
фильтрует элементы
итерируемого объекта, оставляя только
подходящие под определенное условие. В
первом параметре указывается функция-коллбэк,
по которой будет фильтроваться объект. Во
втором параметре - сам объект для фильтрации.
В объекте остаются только те элементы, для
которых коллбэк вернет True
.
Своим результатом функция возвращает
специальный итерируемый объект. Его можно
преобразовать в список, воспользовавшись
функцией list
.
Синтаксис
filter(функция, объект для фильтрации)
Пример
Давайте с помощью фильтрации исходного списка получим список, состоящий только из четных элементов:
lst = [2, 3, 6, 8, 15]
res = filter(lambda x: x % 2 == 0, lst)
print(list(res))
Результат выполнения кода:
[2, 6, 8]
Пример
А теперь отфильтруем только нечетные элементы:
lst = [2, 3, 6, 8, 15]
res = filter(lambda x: x % 2 != 0, lst)
print(list(res))
Результат выполнения кода:
[3, 15]