Функция filter - фильтрация итерируемых объектов на Python
Функция 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]