filter(), можно использовать лямбда-функцию, которая проверяет остаток от деления на 2. Вот пример:
numbers = [1, 2, 3, 4, 5, 6]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
# even_numbers будет [2, 4, 6]
filter() принимает функцию (в данном случае, лямбда-функцию) и итерируемый объект (список чисел). Лямбда-функция возвращает True, если число четное, и False в противном случае. filter() возвращает итератор, содержащий только те элементы, для которых функция вернула True. list() преобразует этот итератор обратно в список.
Для фильтрации списка чисел по их четности с использованием функции filter() в Python, можно применить следующий подход:
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
True, если число четное, и False, если нечетное. Можно использовать оператор % (остаток от деления) для проверки делимости на 2.
def is_even(number):
return number % 2 == 0
filter() для фильтрации списка: Функция filter() принимает два аргумента: функцию (в данном случае, is_even) и итерируемый объект (в данном случае, список numbers). Она возвращает итератор, содержащий только те элементы, для которых функция вернула True.
even_numbers = filter(is_even, numbers)
filter() возвращает итератор, для получения списка четных чисел его нужно преобразовать в список с помощью функции list().
even_numbers_list = list(even_numbers)
print(even_numbers_list) # Вывод: [2, 4, 6, 8, 10]
Полный пример кода:
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
def is_even(number):
return number % 2 == 0
even_numbers = filter(is_even, numbers)
even_numbers_list = list(even_numbers)
print(even_numbers_list)
Использование lambda-функции (альтернативный вариант):
Для более краткой записи можно использовать lambda-функцию вместо определения отдельной функции is_even:
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = filter(lambda x: x % 2 == 0, numbers)
even_numbers_list = list(even_numbers)
print(even_numbers_list)
В этом случае lambda x: x % 2 == 0 является анонимной функцией, которая принимает аргумент x и возвращает True, если x четное, и False в противном случае.