break: прерывание цикла
break немедленно завершает текущий цикл:
for i in range(10):
if i == 5:
break
print(i) # 0 1 2 3 4
print("Цикл завершён")
После break выполнение продолжается со следующей строки после цикла.
Поиск с break
break удобен для поиска элемента — как только нашли, цикл не нужно продолжать:
# Ищем цифру 5 в строке
text = "371942"
search = "9"
for char in text:
if char == search:
print(f"Нашли {search}!")
break
else:
print(f"{search} не найден")
⚠️ Важно: for...else: блок
elseвыполняется только если цикл завершился безbreak.
break в while
Часто используется для выхода из бесконечного цикла:
while True:
cmd = input("Введите команду > ")
if cmd == "quit":
break
print(f"Выполняю: {cmd}")
continue: пропуск итерации
continue пропускает оставшуюся часть текущей итерации и переходит к следующей:
for i in range(5):
if i == 2:
continue
print(i) # 0 1 3 4 (пропустили 2)
Примеры с continue
Печать только чётных чисел:
for num in range(1, 11):
if num % 2 != 0:
continue
print(num) # 2 4 6 8 10
continue в while — важно обновить счётчик до continue:
num = 0
while num < 10:
num += 1 # обновляем ДО проверки!
if num % 3 == 0:
continue
print(num) # 1 2 4 5 7 8 10
break vs continue vs return
Сравнение всех трёх способов управления потоком:
# 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
# return — выход из всей функции
def find_first_even(limit):
for num in range(limit + 1):
if num % 2 == 0:
return num # завершает функцию
return None
| Оператор | Действие | Что завершает |
|---|---|---|
break | Выход из цикла | Только текущий цикл |
continue | Пропуск итерации | Текущую итерацию цикла |
return | Возврат значения | Всю функцию |