Циклы — одна из фундаментальных концепций языков программирования. Циклы удобны, когда вы хотите повторить определенный блок кода несколько раз, пока не будет выполнено заданное условие.
В Python есть две основные конструкции цикла: цикл for и while .
В этом руководстве рассматриваются основы циклов while в Python. Мы также покажем вам, как использовать предложение else и операторы break и continue .
Содержание
Python while Loop
В while цикл выполняет свои операторы неизвестное число раз до тех пор , как данное условие имеет значение true .
Python во while цикла имеет следующий вид:
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 <= b— Истинно, еслиaравно или меньшеb.
Чтобы отрицать условное выражение, используйте логический оператор 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 .
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.