Чему будет равно s после выполнения кода: s = 0; цикл for x in [1, 2, 3, 4]:; внутри при if x == 3: break, иначе выполняется s += x?

AЗначение 0: цикл прервётся ещё до первой итерации, элементы списка добавиться не успеют
BЗначение 1: после прибавления первого элемента сработает выход из цикла, остановка s на единице
CЗначение 6: оператор break не остановит цикл, поэтому в s войдут все элементы списка целиком
DЗначение 3: s успеет получить два первых элемента, а на тройке цикл прервётся через break
Правильный ответ. break завершает весь цикл целиком, поэтому элементы после срабатывания условия не обрабатываются.

Разбор

Сначала s увеличится на 1, затем на 2 — получится 3. Когда x станет равным 3, сработает break, и цикл завершится, не добавив 3 и 4. Итог: s равно 3. Если бы вместо break стоял continue, то 3 был бы пропущен, но 4 успел бы добавиться, и s стал бы равен 7.

Проверь себя · 1/3разбор после ответа
Считается число «успешных» статусов. Код: cnt = 0; цикл for st in ['ok', 'cancelled', 'ok']:; если st == 'cancelled', выполняется continue, иначе cnt += 1. Чему равно cnt после цикла?
Тренировать Python в Telegram

Ещё вопросы по теме «Циклы и условия»