Опубликован: 15.11.2023 110
В Python блок else
обычно используется в операторах сравнения if
.
Однако, else
опционально может использоваться и в двух основных циклах for/else
и while/else
, как блок кода, который завершает выход из цикла.
В определенных типах задач (например, проверка наличия какого-либо элемента в списке) эта конструкция может быть очень полезна.
В цикле for
блок else
выполняется только в том случае, если цикл не был прерван оператором break
(при этом, оператор continue
на блок else
не влияет).
# Пример цикла for с else и break:
for num in range(10):
if num == 5:
break
else:
print(num, end=' ')
else:
print('Цикл закончился') # блок else не выполнен из-за break
0 1 2 3 4
# Пример цикла for с else и continue:
for num in range(10):
if num == 5:
continue
else:
print(num, end=' ')
else:
print('Цикл закончился') # continue не влияет на блок else
0 1 2 3 4 6 7 8 9 Цикл закончился
В цикле while
блок else
будет выполнен, если условие в while
ложно.
!!! Важно отметить, что блок else
не выполняется, если цикл while
был прерван оператором break
.
# Пример цикла while с else и break:
x = 0
while x < 10:
if x == 5:
break
else:
print(x, end=' ')
x += 1
else:
print('Цикл закончился') # из-за break блок else не выполнен
0 1 2 3 4
# Пример цикла while с else, который выполняется после завершения цикла:
x = 0
while x < 10:
print(x, end=' ')
x += 1
else:
print('Цикл закончился')
0 1 2 3 4 5 6 7 8 9 Цикл закончился
Оценка основных статистических метрик набора данных в Python
Область эффективного использования lambda функции в Python
Логические выражения if ... else в Pythonic стиле
Способы удаления лишних пробелов в строке
Комментариев нет.