Операторы `break` и `continue` — это мощные инструменты для управления ходом выполнения циклов в Python. Иногда вам не нужно выполнять цикл до самого конца или хочется пропустить некоторые шаги. Оператор `break` позволяет немедленно и полностью выйти из цикла, как только будет выполнено определённое условие. В свою очередь, `continue` прерывает только текущий шаг (итерацию) и переходит к следующему. Этот тренажер поможет вам разобраться в разнице между ними. Вы начнете с простых заданий на использование этих операторов, научитесь предсказывать, как они изменят поведение программы, и в конце сможете собирать из частей более сложные логические конструкции.
- Модуль 1: Основы синтаксиса Python
- Модуль 2: Переменные и типы данных
- Модуль 3: Операторы
- Арифметические операторы (+, -, *, /).
- Целочисленное деление и остаток (// и %).
- Возведение в степень (**).
- Операторы сравнения.
- Логические операторы (and, or, not).
- Операторы присваивания (=, +=, -=).
- Операторы принадлежности (in, not in).
- Операторы идентичности (is, is not).
- Битовые операторы.
- Тернарный оператор.
- Модуль 4: Ввод и вывод данных
- Модуль 5: Условные конструкции
- Модуль 6: Циклы
- Цикл for.
- Функция range().
- Цикл while.
- Операторы break и continue.
- Конструкция else в циклах.
- Вложенные циклы.
- Функция enumerate().
- Модуль 7: Строки
- Модуль 8: Списки
- Модуль 9: Кортежи
- Модуль 10: Словари
- Модуль 11: Множества
- Модуль 12: Функции
- Модуль 13: Встроенные функции
- Модуль 14: Работа с файлами
- Модуль 15: Обработка исключений
- Модуль 16: Модули и пакеты
- Модуль 17: ООП - Основы
- Модуль 18: ООП - Продвинутый уровень
- Модуль 19: Декораторы
- Модуль 20: Генераторы и итераторы
- Модуль 21: Регулярные выражения
- Модуль 22: Дата и время
- Модуль 23: Математические операции
- Модуль 24: Работа с сетью
- Модуль 25: Асинхронное программирование
- Модуль 26: Многопоточность
- Модуль 27: Тестирование
- Модуль 28: Базы данных
- Модуль 29: Алгоритмы и структуры данных
- Модуль 30: Продвинутые возможности
Досрочный выход из цикла
Иногда нужно остановить цикл раньше, чем он закончится сам. В этом коде мы ищем первое число, которое больше 3. Вставьте правильный оператор, чтобы прервать цикл сразу после того, как такое число будет найдено и напечатано.
for i in range(10):
print(i)
if i > 3:
input1SЧто выведет код с break?
Внимательно проанализируйте этот цикл. Он перебирает слова в списке. Когда именно он остановится и что успеет вывести на экран до своей остановки?
words = ['start', 'process', 'stop', 'end']
for word in words:
if word == 'stop':
break
print(word, end=' ')Пропуск итерации с continue
В этом задании нужно обработать все числа в диапазоне, кроме одного. Дополните код так, чтобы он пропускал печать числа 2, но продолжал работу цикла для остальных чисел.
for i in range(5):
if i == 2:
input1S
print(i)Предскажите результат с continue
Этот код должен обрабатывать данные, но пропускать "поврежденные" записи, отмеченные как -1. Проанализируйте цикл и введите, какие числа будут выведены в итоге. Введите числа через пробел.
data = [10, 20, -1, 30, -1, 40]
for item in data:
if item == -1:
continue
print(item, end=' ')Исправьте ошибку в синтаксисе
Иногда даже опытные программисты допускают опечатки. В этом коде есть ошибка в написании оператора `continue`. Найдите и исправьте ее, чтобы программа работала корректно.
# Пропускаем нечетные числаfor i in range(5): if i % 2 != 0: continue() print(i)Сравнение break и continue
`break` и `continue` управляют ходом цикла, но делают это по-разному. Сопоставьте каждый оператор с его точным описанием действия, чтобы закрепить понимание их различий.
continuebreakПоиск первого подходящего элемента
Соберите из фрагментов программу, которая ищет первое число больше 10 в списке. Как только такое число найдено, программа должна вывести его и немедленно прекратить поиск. Некоторые строки являются лишними.
if n > 10:print(n)continuenumbers = [2, 8, 12, 5, 25]breakfor n in numbers:Правильный порядок обработки данных
Восстановите правильный порядок строк. Программа должна перебирать список чисел, пропускать отрицательные с помощью `continue`, прекращать работу при встрече с нулем с помощью `break`, а все подходящие положительные числа добавлять в новый список `positives`.
if num < 0:positives.append(num)numbers = [1, 5, -2, 8, 0, 3, -4]continuebreakpositives = []if num == 0:for num in numbers:print(positives)Результат break в цикле while
Циклы `while True` часто используются для создания "бесконечных" циклов, которые работают до выполнения условия выхода. Проанализируйте код. Что будет выведено на экран в итоге?
count = 0
while True:
print(count, end=' ')
count += 1
if count >= 3:
break