Циклы for и while, операторы break и continue, волшебное слово else
В этой статье я расскажу о циклах for и while, операторах break и continue, а также о слове else, которое, будучи употребленное с циклом, может сделать программный код несколько более понятным.
Цикл while
While - один из самых универсальных циклов в Python, поэтому довольно медленный. Выполняет тело цикла до тех пор, пока условие цикла истинно.
>>> i = 5 >>> while i < 15: ... print(i) ... i = i + 2 ... 5 7 9 11 13
Цикл for
Цикл for уже чуточку сложнее, чуть менее универсальный, но выполняется гораздо быстрее цикла while. Этот цикл проходится по любому итерируемому объекту (например строке или списку), и во время каждого прохода выполняет тело цикла.
>>> for i in 'hello world': ... print(i * 2, end='') ... hheelllloo wwoorrlldd
Оператор continue
Оператор continue начинает следующий проход цикла, минуя оставшееся тело цикла (for или while)
>>> for i in 'hello world': ... if i == 'o': ... continue ... print(i * 2, end='') ... hheellll wwrrlldd
Оператор break
Оператор break досрочно прерывает цикл.
>>> for i in 'hello world': ... if i == 'o': ... break ... print(i * 2, end='') ... hheellll
Волшебное слово else
Слово else, примененное в цикле for или while, проверяет, был ли произведен выход из цикла инструкцией break, или же "естественным" образом. Блок инструкций внутри else выполнится только в том случае, если выход из цикла произошел без помощи break.
>>> for i in 'hello world': ... if i == 'a': ... break ... else: ... print('Буквы a в строке нет') ... Буквы a в строке нет