Помогите решить задачу в python
Вводятся целые числа в одну строчку через пробел. Необходимо преобразить эти данные в список целых чисел. Затем, перебрать этот список в цикле for и просуммировать все значения с нечетными индексами. Результат вывести на экран. Пытался решить в одну строчку, но неверно. В строчке "1 2 3 4 5" нужно сложить 2+4, потому что питон считает индексы с нуля, а у меня складывает 1+3+5. Программу оставлю ниже
print(sum([int(i) for i in input().split() if int(i) % 2 == 0]))
Ответы (1 шт):
Просто можно использовать не весь список, а его срез с установленым шагом 2
>>> a = "1 2 3 4 5"
>>> a.split()[1::2]
['2', '4']
Здесь буквально: "взять срез с первого элемента включительно, до последнего элемента, с шагом два". И условие по индексу и лишние операции такие, как %-остаток от деления, не нужны.
А далее забрать сумму
>>> sum([int(i) for i in a.split()[1::2]])
6
Тест
>>> sum([int(i) for i in input().split()[1::2]])
23 56 74 89 12 78
223