0 знаков
36. Циклы for/else и while/else в Python
Кратко- В предыдущем уроке разобрались с операторами
breakиcontinue, а также с цикламиwhileиfor.- Настало время объединить знания и изучить конструкции
for/elseиwhile/else.- Это те же самые циклы
forиwhile, в которые опционально добавлен блокelse.- Блок
elseв конструкцииfor/elseбудет выполнен, если цикл полностью завершил итерацию, но не будет выполнен, если цикл прерван операторомbreak.- В определенных типах задач конструкции
for/elseиwhile/elseмогут пригодиться.- Конструкция
while/elseаналогична рассмотренной инструкцииfor/else.- В Python нет ненужных конструкций, просто некоторые подходят только для определенного класса задач.
В предыдущем уроке вы разобрались с операторами break и continue. Еще ранее познакомились с циклами while и for. Настало время объединить знания и изучить конструкции for/else и while/else.
Вообще, это те же самые циклы for и while, в которые, опционально, добавлен блок else:
for i in range(5):
print(i)
else:
print('Things are good') Казалось бы, чем этот код по функционалу отличается от этого:
for i in range(5):
print(i)
print('Things are good') В данном случае – ничем. В прошлом уроке мы обогатили знания новым оператором break. Давайте применим его. Но для начала выполните задание, чтобы вспомнить предыдущий материал.
Внимание! Практика по Python находится на стадии тестирования, поэтому может что-то не работать. Если у вас возникли проблемы или вы нашли баг, пишите в Телеграм. Там же можно обсудить курс по Python. Читайте новости проекта Codebra на моем канале @codebra_official.
-
Напишите программу, которая должна получать с клавиатуры числа (с пломощью функции
input()) до тех пор, пока сумма меньше10, либо до ввода пользователем числа3.Пример 1:
Пример (none)2 3Пример (none)5Пример 2:
Пример (none)30Пример (none)30Пример 3:
Пример (none)1 1 1 2 2 2 2Пример (none)11
Вернемся к теории. Например, если переменная i равна трем, то мы прерываем цикл:
for i in range(5):
print(i)
if i == 3:
break
else:
print('Things are good') Теперь вы увидите разницу между предыдущим кодом и этим:
for i in range(5):
print(i)
if i == 3:
break
print('Things are good') 
Внимание! Практика по Python находится на стадии тестирования, поэтому может что-то не работать. Если у вас возникли проблемы или вы нашли баг, пишите в Телеграм. Там же можно обсудить курс по Python. Читайте новости проекта Codebra на моем канале @codebra_official.
-
Исправьте предыдущую программу таким образом, чтобы результат выводился только если сумма чисел больше
10.Пример 1:
Пример (none)2 3Пример (none)Пример 2:
Пример (none)30Пример (none)30Пример 3:
Пример (none)1 1 1 2 2 2 2Пример (none)11
То есть блок else в конструкции for/else будет выполнен, если цикл полностью завершил итерацию, но не будет выполнен, если цикл прерван оператором break. В определенных типах задач эта конструкция может пригодиться.
Конструкция while/else аналогична рассмотренной инструкции for/else.
В этом уроке еще раз рассмотрели инструкции while/else и for/else. Так же убедились, что в Python нет ненужных конструкций, просто некоторые подходят только для определенного класса задач. В следующем уроке научимся обрабатывать исключения с помощью инструкции try/except.
Тест
Похожие уроки Codebra
Подписывайся на наш Telegram-канал!
Новости, полезный материал,
программирование и ИБ
Подписывайся на наш Telegram-канал!
Новости, полезный материал,
программирование и ИБ