/
Вопросы и ответы
/
Python
/

Как вывести четные элементы массива питон

Как вывести четные элементы массива питон

5 лет назад

Человек-Молекула

Ответы

0

Для вывода чётных элементов массива в Python можно использовать различные подходы.

Подход 1: Использование цикла for

Это базовый метод, в котором мы перебираем элементы массива и выводим те из них, которые являются чётными (т.е. остаток от деления на 2 равен 0).

1
2
3
4
5
arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]  # Исходный массив

for num in arr:
    if num % 2 == 0:
        print(num)

Подход 2: Использование генератора списков

Генератор списков (list comprehension) — это компактный способ создания списков. Мы можем использовать его для создания списка чётных чисел, а затем вывести его.

1
2
3
4
arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

even_numbers = [num for num in arr if num % 2 == 0]
print(even_numbers)

Подход 3: Использование функции filter()

Функция filter() позволяет отфильтровать элементы массива, используя заданную функцию. В этом примере мы используем filter() для извлечения чётных чисел.

1
2
3
4
arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

even_numbers = list(filter(lambda x: x % 2 == 0, arr))
print(even_numbers)

4 года назад

Ivan Mamtsev

0

Чётное число делится на 2 без остатка: x % 2 == 0. Отберите такие элементы списка генератором:

1
2
3
numbers = [-1, 6, 3, 8, -4, 2]
evens = [x for x in numbers if x % 2 == 0]
print(evens)  # => [6, 8, -4, 2]

В Python массив обычно хранят в списке, list.

Через цикл

1
2
3
4
5
numbers = [-1, 6, 3, 8, -4, 2]
for x in numbers:
    if x % 2 == 0:
        print(x, end=" ")
# 6 8 -4 2

Сколько чётных элементов

1
2
3
numbers = [-1, 6, 3, 8, -4, 2]
count = sum(1 for x in numbers if x % 2 == 0)
print(count)  # => 4

Ответ для массива [-1, 6, 3, 8, -4, 2] — 4 чётных элемента: 6, 8, −4 и 2.

Сумма и максимум чётных

1
2
3
4
numbers = [-1, 6, 3, 8, -4, 2]
evens = [x for x in numbers if x % 2 == 0]
print(sum(evens))  # => 12
print(max(evens))  # => 8

Если чётных нет, max() упадёт с ошибкой. Передайте значение по умолчанию: max(evens, default=None).

Элементы на чётных позициях

Иногда в задаче нужны элементы с чётными индексами: 0, 2, 4. Это делает срез с шагом 2:

1
2
3
numbers = [-1, 6, 3, 8, -4, 2]
print(numbers[::2])   # => [-1, 3, -4] — индексы 0, 2, 4
print(numbers[1::2])  # => [6, 8, 2] — индексы 1, 3, 5

Прочитайте условие внимательно: «чётные элементы» и «элементы на чётных местах» дают разный ответ.

Список из ввода

1
2
numbers = list(map(int, input().split()))   # ввод: 1 2 3 4 5 6
print(*[x for x in numbers if x % 2 == 0])  # 2 4 6

Отрицательные числа

Для отрицательных чисел % в Python возвращает неотрицательный остаток при делении на 2: -4 % 2 равно 0, -3 % 2 равно 1. Проверка x % 2 == 0 подходит для любых целых.

NumPy

Для массивов NumPy фильтр пишут без цикла:

1
2
3
4
import numpy as np

arr = np.array([-1, 6, 3, 8, -4, 2])
print(arr[arr % 2 == 0])  # => [ 6  8 -4  2]

Списки, циклы и срезы разбирают в бесплатном курсе «Основы Python».

месяц назад

Никита Вихров

+7 800 100 22 47

бесплатно по РФ

+7 495 085 21 62

бесплатно по Москве

108813 г. Москва, вн.тер.г. поселение Московский,
г. Московский, ул. Солнечная, д. 3А, стр. 1, помещ. 20Б/3
ОГРН 1217300010476
ИНН 7325174845