Предназначение цикла while в Python , такое же, как и в других языках программирования - выполнять одинаковые инструкции столько раз, пока условие верно ( True ). В переводе с английского языка, while - до тех пор, пока. Удобнее использовать цикл while , а не for , когда заранее неизвестно количество прохождений в ц...

Цикл while в Python

Предназначение цикла while в Python, такое же, как и в других языках программирования - выполнять одинаковые инструкции столько раз, пока условие верно (True). В переводе с английского языка, while - до тех пор, пока. Удобнее использовать цикл while, а не for, когда заранее неизвестно количество прохождений в цикле (итераций).

Синтаксис while в Python

Не один язык программирования не может похвастаться таким простым синтаксисом, как у Python. Если кто не читал, то здесь моя статья о том, почему я стоит изучать Python, как первый язык программирования. Ну посудите сами, что может быть проще?

while условие:
    инструкция 1
    инструкция 2
    ...и.т.д
инструкция вне цикла

Цикл состоит из оператора while, заданного условия и тела цикла с инструкциями. Отступы для инструкций после двоеточия, явно указывают на принадлежность инструкций к блоку с циклом while. Последующие инструкции без отступов, выходят за пределы цикла. Однократное выполнение тела с инструкциями, называется итерацией.

Количество повторений будет зависеть от условия, выполнив все инструкции, программа снова проверяет условие. Если условие будет верным (True), то инструкции выполнятся ещё один раз. А если условие окажется ложью (False), то Python выйдет из цикла и продолжит свою работу, за пределами цикла.

Пример работы цикла while

Задача: Вывести все числа от 5 до 10 включительно.

Решение:

i=5
while i<11:
    print(i)
    i=i+1

Результат:

5
6
7
8
9
10

Комментарии к задаче

Заводим переменную i со значением 5, как отправную точку для начала вывода. Последнее выводимое число, должно быть 10. Создаем условие (while), при котором все числа должны быть меньше 11. Проверяем условие, если 5 меньше 1, то переходим к выполнению первой инструкции:

print(i) - вывести переменную i
выводится число 5

Во второй инструкции вычисляем второе выводимое число, увеличиваем i на единицу: к текущему значению в переменной i прибавим 1.

i=5+1

Первая итерация закончена, возвращаемся обратно в условие и снова проверяем. Если i меньше 11 (i = 6), то заходим на новый цикл: распечатываем 6 и увеличиваем переменную снова на 1. Цикл while повторяется столько количество раз, пока условие верно. После того, как условие станет неверным (False) - значение переменной станет равно 11, Python выйдет из цикла while.

Бесконечный цикл while

Бесконечный цикл в Python получить очень легко - Надо просто задать условие, при котором всегда будет возвращаться True. Число 5 всегда будет меньше 6, поэтому слово "Бесконечность" будет выводиться на экран, бесконечное количество раз. Завершить работу программы можно будет, только принудительно закрыв программу или с помощью ключевого слова break. В намеренном создании бесконечного цикла, особого смысла нет. Просто новички по неопытности, случайно попадают в ситуацию "бесконечности".

while 5<6:
    print('Бесконечность')

Как остановить цикл while в Python?

Ключевое слово break останавливает цикл while. Как это полезно можно использовать? Предположим перед нами стоит задача вывести числа от 1 до 5.

i = 1
while i<10:
    print(i)
    if i == 5:
        break
    i += 1

Заводим переменную счетчик, прописываем условие, которое всегда будет верным. Распечатываем текущее значение в переменной счетчика - оно равно 1. Каждый раз увеличивая значение счетчика на 1. Но когда значение переменной станет равной 5, то выполнится break и цикл остановится. Этого мы и хотели, на экран выведутся числа.

1
2
3
4
5

Заключение