Циклы — одна из фундаментальных концепций языков программирования. Циклы удобны, когда вы хотите повторить определенный блок кода несколько раз, пока не будет выполнено заданное условие.
В 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
.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.