Автор: CoolPython
Многие теряются при виде блока else
в циклах. А между тем в Python он используется не только в условных конструкциях. Рассмотрим на примере цикла for
:
for i in range(1, 3): print(i) else: print("loop finished normally") # 1 # 2 # loop finished normally
Блок else выполняется, если выполняется условие выхода из цикла. Это значит, что если цикл прерывается как-то иначе, например, ключевым словом break
или исключением, то блок else
выполнен не будет:
for i in range(1, 4): if i == 2: raise Exception("error occurred") else: print("loop finished normally") # Exception: error occurred
Чаще всего этим пользуются, когда ищут что-нибудь в цикле с использованием ключевого слова break
:
numbers = [1, 3, 11, 5] for number in numbers: if number % 2 == 0: print ("even number found") break else: print ("no even numbers in the list") # no even numbers in the list
С циклами while
можете попробовать самостоятельно.