← Все вопросы
Как посчитать, сколько чётных чисел в списке?
5
Дан список чисел, нужно посчитать, сколько из них чётных. Я умею проверять одно число через % 2, но не пойму, как накапливать количество, проходя по всему списку. Завожу счётчик, а дальше не уверен, куда его прибавлять.
2 ответа
10
✓ Принятый ответ — помог автору
Заводишь счётчик с нулём до цикла, и внутри прибавляешь 1 только когда условие выполнено:
nums = [4, 7, 10, 3, 8]
count = 0
for x in nums:
if x % 2 == 0:
count += 1
print(count) # 3
Ключ в том, что count += 1 стоит внутри if — значит, считаются только чётные. Это общий шаблон «счётчик по условию», он подходит и для подсчёта положительных, кратных трём и чего угодно — меняешь только условие.
3
Когда привыкнешь к спискам, то же самое можно записать в одну строку:
count = sum(1 for x in nums if x % 2 == 0)
Но для понимания сначала освой обычный цикл со счётчиком — он нагляднее.
Ваш ответ
Войдите, чтобы ответить на вопрос.