Форум сайта python.su
0
Выведите все четные элементы списка. При этом используйте цикл for, перебирающий элементы списка, а не их индексы!
a = input().split()
for i in range(len(a)):
a[i] = int(a[i])
if a[i] % 2 == 0:
a.append(i)
print(a)
Офлайн
6
a = [1, 2, 3, 4, 5, 6, 7]
for i in a[1: len(a): 2]:
print(i)
a = [1, 2, 3, 4, 5, 6, 7] print([i for i in a[1: len(a): 2]])
Отредактировано Firik (Июнь 28, 2016 20:18:33)
Офлайн
0
нам надо чётные элементы, а не индексы. список произвольный
Отредактировано dima757 (Июнь 28, 2016 20:17:46)
Офлайн
6
dima757
Вы или не запускали пример или путаете индексы с элементами.
Офлайн
0
ерунда получается
если дано 1 2 2 3 3 3 4 выводит 2 3 3
должно 2 2 4
Отредактировано dima757 (Июнь 28, 2016 20:39:59)
Офлайн
73
dima757а вы кстати перебираете по индексам в своем решении
При этом используйте цикл for, перебирающий элементы списка,
a = [1, 2, 3, 4, 5, 6, 7] for i in a: if i%2 == 0: print(i)
a = [1, 2, 3, 4, 5, 6, 7] print([i for i in a if i%2 == 0])
Отредактировано marvellik (Июнь 28, 2016 21:08:17)
Офлайн
0
Спасибо!!!!
В итоге вышло так
a = input().split() for i in a: i = int(i) if i % 2 == 0: print(i)
Офлайн
73
можно проще
for i in input().split(): if int(i) % 2 == 0: print(i)
Отредактировано marvellik (Июнь 28, 2016 21:10:30)
Офлайн
0
спасибо
но для меня(чайника) хоть как
Офлайн
857
dima757
Выведите все четные элементы списка.
>>> lst = [1, 2, 3, 4, 5, 6, 1, 2, 3, 4] >>> >>> [i for i in lst if i % 2 == 0] [2, 4, 6, 2, 4] >>> >>> list(filter(lambda x: x % 2 == 0, lst)) [2, 4, 6, 2, 4] >>>
marvellikНадо, чтобы сразу поступал список чисел.
можно проще
dima757a = input().split() for i in a:
a = map(int, input().split()) for i in a:
>>> a = map(int, input().split()) 1 2 3 4 5 >>> a <map object at 0xb740a32c> >>> list(a) [1, 2, 3, 4, 5] >>>
Отредактировано py.user.next (Июнь 29, 2016 06:07:01)
Офлайн