Есть словарь выручки по странам revenue_by_country = {'RU': 100, 'KZ': 50}. Как корректно посчитать сумму значений через цикл for?
A
total = 0; for x in revenue_by_country: total += xB
total = 0; for v in revenue_by_country.values(): total += vC
total = sum(revenue_by_country)D
total = 0; for k, v in revenue_by_country: total += vПравильный ответ. Чтобы суммировать значения словаря, итерируйтесь по
revenue_by_country.values() или по парам из revenue_by_country.items().Разбор
В for x in revenue_by_country переменная x принимает ключи ('RU', 'KZ'), поэтому попытка складывать их с числом приведёт к ошибке. Правильно проходить по значениям через revenue_by_country.values() (или по (key, value) через revenue_by_country.items()) и накапливать сумму.
Проверь себя · 1/3разбор после ответа
Чему равен
steps после выполнения кода: n = 5; steps = 0; затем цикл while n > 0:; внутри выполняется n -= 2 и steps += 1?Ещё вопросы по теме «Циклы и условия»
- В цепочке `if`/`elif`/`else` условия проверяются сверху вниз. Если сначала стоит `if amount > 100`, а затем `elif amount > 200`, то при `amount = 250` какая ветка выполнится?
- Нужно найти индекс первого отрицательного значения в списке `amounts = [10, 0, -5, 7]`. Выполняется `idx = None`, затем цикл `for i, a in enumerate(amounts):`, и при `if a < 0:` выполняются `idx = i` и `break`. Чему будет равно `idx` после выполнения?
- Есть списки пользователей и трат: `users = ['u1', 'u2']` и `spends = [100, 200]`. После `d = {}`, в цикле `for u, s in zip(users, spends):` выполняется `d[u] = s`. Чему равно `d['u2']`?
- Нужно сегментировать пользователей по `orders_cnt`: 0 → `'new'`, 1–4 → `'low'`, 5+ → `'high'`. Какой порядок условий в цепочке `if`/`elif`/`else` корректный?
- Какой фрагмент `while` вероятнее всего приведёт к бесконечному циклу (если `events` — непустой список)?
- Все вопросы по «Циклы и условия» →