break и continueИногда нужно досрочно выйти из цикла или пропустить текущую итерацию и перейти к следующей. Для этого в Python есть операторы break и continue.
В этом уроке мы научимся управлять ходом выполнения циклов с помощью этих операторов.
break и continue.break для досрочного выхода из цикла.continue для пропуска итераций.break — досрочный выход из циклаbreak немедленно прекращает выполнение цикла и переходит к коду после него.
for i in range(10):
if i == 5:
break
print(i)
print("Цикл завершён")
# Вывод:
# 0
# 1
# 2
# 3
# 4
# Цикл завершёнnumbers = [3, 7, 2, 9, 1, 5]
target = 9
for num in numbers:
if num == target:
print(f"Найдено: {num}")
break
print(f"Проверяем: {num}")
# Вывод:
whilewhile True:
answer = input("Введите 'выход' для завершения: ")
if answer == "выход":
break
print(f"Вы ввели: {answer}")
print("Программа завершена")continue — пропуск итерацииcontinue пропускает оставшуюся часть текущей итерации и переходит к следующей.
for i in range(10):
if i % 2 == 0:
continue
print(i)
# Вывод:
# 1
# 3
# 5
# 7
# 9for num in range(1, 11):
if num == 5:
continue
print(num)
# Вывод: 1, 2, 3, 4, 6, 7, 8, 9, 10 (без 5)data = ["10", "abc", "20", "xyz", "30"]
for item in data:
if not item.isdigit():
continue
print(int(item) * 2)
# Вывод:
# 20
# 40
# 60break и continuebreak — выход из циклаcontinue — пропуск текущей итерации# break — полностью прекращает цикл
for i in range(5):
if i == 3:
break
print(i) # 0, 1, 2
# continue — пропускает только текущую итерацию
for i in range(5):
if i == 3:
continue
print(i) # 0, 1, 2, 4Что выведет данный код?
for i in range(5):
if i == 3:
break
print(i)Что выведет данный код?
for i in range(5):
if i == 3:
continue
print(i)Напиши программу, которая находит первое число в списке, которое делится на 7.
numbers = [3, 10, 14, 21, 28, 35]
for num in numbers:
if num % 7 == 0:
print(f"Найдено: {num}")
breakНапиши программу, которая выводит все числа от 1 до 20, кроме чисел, кратных 3.
for i in range(1, 21):
if i % 3 == 0:
continue
print(i)Напиши программу, которая просит пользователя вводить числа. Если введено 0 — выход. Отрицательные числа пропускаются. Положительные — суммируются.
total = 0
while True:
num = int(input("Введите число (0 для выхода): "))
if num == 0:
break
if num < 0:
print("Отрицательное число пропущено")
continue
total += num
print(f"Сумма: {total}")На этом уроке мы научились использовать break для досрочного выхода из цикла и continue для пропуска текущей итерации. Эти операторы делают код более гибким и эффективным.
break и continue — цикл завершится или пропустит итерацию не в том месте.break во вложенном цикле в расчёте на выход из обоих циклов — прервется только внутренний цикл.break и continue там, где можно обойтись условиями — программа завершится ошибкой или даст неверный результат.Напиши программу, которая находит и выводит первое чётное число в списке [7, 3, 9, 4, 1, 6]. Используй break.
Напиши программу, которая выводит все числа от 1 до 20, пропуская чётные. Используй continue.
Напиши программу, которая проверяет, является ли число простым. Используй break для досрочного выхода, если найден делитель.
Напиши программу, которая:
continue).break).Напиши программу, которая:
"Цифры не найдены".Считывай числа до 0. Выведи индекс первого отрицательного числа (считая с 1). Если отрицательных нет — выведи 0.
Считывай числа до повторного ввода того же числа подряд. Выведи сумму всех введённых чисел до момента повтора.