Цикл while в Python используется для повторения блока кода, пока выражение (условие) истинно, т.е. равно True .
Обычно этот цикл используют, когда заранее неизвестно, сколько раз нужно повторить блок кода.
Синтаксис цикла
while выражение:
Тело while
Сначала цикл while проверяет выражение на истинность. Тело цикла начнет выполняться только в том случае, если выражение = True . После первой итерации цикла выражение снова проверяется на истинность. Этот процесс будет продолжаться до тех пор, пока выражение не станет равно False .
В Python тело цикла while обозначается отступами. Тело цикла начинается с отступа, а заканчивается первой строкой без отступа.
Помните, что Python интерпретирует ненулевые значения как True . None и 0 интерпретируются как False .
Блок-схема цикла
Пример использования цикла
# Программа складывает натуральные # числа от 1 до n # sum = 1+2+3+. +n # Чтобы предложить пользователю ввести число n, # напишите: n = int(input(«Введите n: «)) n = 10 # объявляем переменные: сумма и счетчик sum = 0 i = 1 while i
Вывод:
Python ищем заказы на фриланс и выполняем их. Python requests, lxml, csv
Введите n: 10
Сумма чисел от 1 до n: 55
В приведенной выше программе выражение будет равно True до тех пор, пока счетчик i меньше или равен n . В нашем примере n = 10.
Главное не забывать увеличивать значение счетчика в теле цикла while, иначе получится бесконечный цикл. выражение всегда будет истинным, поскольку i не будет увеличиваться, следовательно, цикл никогда не остановится.
Цикл while с блоком else
Так же, как и с циклами for, с циклами while можно использовать дополнительный блок else .
Блок else начнет выполняться, когда условие цикла while станет равно False .
Цикл while можно принудительно завершить с помощью инструкции break. В таких случаях блок else игнорируется. Иначе говоря, блок else выполняется только в том случае, если внутри тела while не использовался оператор break, а условие цикла while ложно.
Вот пример, который иллюстрирует это.
»’Программа демонстрирует использование конструкции else в комбинации с циклом while»’ counter = 0 while counter < 3: print(«Внутри цикла while») counter = counter + 1 else: print(«Внутри блока else»)
Вывод:
Внутри цикла while
Внутри цикла while
Внутри цикла while
Внутри блока else
Цикл while в Python
Циклы — одна из фундаментальных концепций языков программирования. Циклы удобны, когда вы хотите повторить определенный блок кода несколько раз, пока не будет выполнено заданное условие.
В Python есть две основные конструкции цикла: цикл for и while .
В этом руководстве рассматриваются основы циклов while в Python. Мы также покажем вам, как использовать предложение else и операторы break и continue .
Python while Loop
В while цикл выполняет свои операторы неизвестное число раз до тех пор , как данное условие имеет значение true .
Python во while цикла имеет следующий вид:
Учил python 30 дней. Полное видео на канале
while EXPRESSION: STATEMENT(S)
Оператор while начинается с ключевого слова while , за которым следует условное выражение.
EXPRESSION оценивается перед выполнением операторов. Если условие true , выполняется STATEMENT(S) . В противном случае, если условие оценивается как false , цикл завершается, и управление программой передается следующей инструкции.
Блок STATEMENT(S) начинается с отступа и заканчивается первой строкой без отступа. Большинство людей предпочитают использовать отступы с четырьмя или двумя пробелами. Официальное руководство по стилю для кода Python рекомендует использовать 4 пробела для каждого уровня отступа и избегать смешивания использования табуляции и пробелов для отступа.
Давайте посмотрим на следующий пример кода, который увеличивает и печатает текущее значение переменной i если оно меньше пяти:
i=0 while i 5: i += 1 print(‘number:’, i)
Цикл вторника повторяется, пока i меньше или равно пяти. Он выдаст следующий результат:
number: 1 number: 2 number: 3 number: 4 number: 5
Python поддерживает стандартные операции сравнения:
- a == b — Истинно, если a и b равны.
- a != b — Верно, если a и b не равны.
- a > b — Истинно, если a больше b .
- a >= b — Истинно, если a равно или больше b .
- a < b — Истинно, если a меньше b .
- a
Чтобы отрицать условное выражение, используйте логический оператор not :
i=0 while not i >= 5: i += 1 print(‘number:’, i)
break и continue утверждения
break и continue заявления позволяют контролировать while выполнение цикла.
Оператор break завершает текущий цикл и передает управление программой оператору, который следует за завершенным циклом. Наиболее распространенная ситуация — использовать break для завершения цикла при выполнении определенного условия.
В следующем примере выполнение цикла прерывается, когда текущий повторяемый элемент равен 2 .
i=0 while i 5: i += 1 if i == 2: break print(‘number:’, i)
Number: 1
Оператор continue завершает текущую итерацию цикла и передает управление программой следующей итерации цикла.
В следующем примере, как только текущий повторяемый элемент равен 2 оператор continue заставит выполнение вернуться к началу цикла и продолжить следующую итерацию.
i=0 while i 5: i += 1 if i == 2: continue print(‘number:’, i)
number: 1 number: 3 number: 4 number: 5
else пункт
В отличие от других языков, в Python, то в while петля имеет опциональный else условие:
while EXPRESSION: STATEMENT(S) else: STATEMENT(S)
Операторы внутри предложения else выполняются только тогда, когда выражение EXPRESSION значение false . Если возникает исключение или цикл завершается оператором break , оно не выполняется.
i=0 while i 5: i += 1 print(‘number:’, i) else: print(‘Loop completed.’)
number: 1 number: 2 number: 3 number: 4 number: 5 Loop completed.
Теперь Лью посмотрим , что происходит , когда вы break из петли:
i=0 while i 5: i += 1 if i == 2: break print(‘number:’, i) else: print(‘Loop completed.’)
Оператор внутри предложения else не выполняется, потому что выражение не имеет значения false :
Number: 1
else пункт с в while цикла не часто используется. Одна из распространенных ситуаций — это когда вы ожидаете выхода из цикла, и если цикл продолжает выполняться до тех пор, пока условие не станет false , вы можете выполнить некоторый оператор или функцию.
Бесконечный цикл while
Бесконечный цикл — это цикл, который повторяется бесконечно и никогда не завершается, пока программа не завершится. Если условие всегда истинно, вы получаете бесконечный цикл.
Бесконечные циклы обычно используются для того, чтобы программа ожидала возникновения какого-либо внешнего события. Обычно в Python бесконечный цикл создается с помощью while True: вместо True вы также можете использовать любое другое выражение, которое всегда возвращает true .
Вот пример бесконечного в while цикл , который будет продолжать предложит ввести «Да»:
while True: i = input(‘Please enter ‘Yes’: ‘) if i.strip() == ‘Yes’: break
В while цикл выше будет работать , пока вы не введете «Да»:
Please enter ‘Yes’: 3 Please enter ‘Yes’: l Please enter ‘Yes’: lin Please enter ‘Yes’: No Please enter ‘Yes’: Yes
Другой способ прервать бесконечный цикл — нажать CTRL+C
При написании бесконечных циклов убедитесь, что вы используете оператор break для выхода из цикла в какой-то момент.
Выводы
В while цикл многократно выполняет свои заявления до тех пор , данное условие имеет значение true .
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Источник: routerus.com
Цикл while в Python – как работает и синтаксис
Цикл while в Python позволяет выполнять часть кода до тех пор, пока данное условие не вернет false. Он также известен как предварительно протестированный цикл.
Его можно рассматривать как повторяющийся оператор if. Когда мы не знаем количество итераций, наиболее эффективно использовать цикл while.
Синтаксис приведен ниже:
while expression: statements
Здесь может быть как единичное утверждение, так и группа. Выражение должно быть любым допустимым выражением Python, приводящим к истинному или ложному результату. Истина – это любое ненулевое значение, а ложь – 0.