Продолжить утверждение в то время как л oop python - PullRequest
0 голосов
/ 22 апреля 2020

Я новичок в python, и у меня возникают проблемы с этим кодом:

count = 0

while count <15:
   if count == 5:
      continue
   print(count)
   count += 1

Когда значение count = 5, оно останавливает l oop, как если бы был оператор break , Почему это так? Пожалуйста, помогите!

Ответы [ 3 ]

3 голосов
/ 22 апреля 2020

Оператор continue игнорирует остаток l oop и возвращает обратно к началу. Счетчик никогда не обновляется, так как count += 1 игнорируется, поэтому с этого момента счетчик всегда равен 5, а оператор continue всегда выполняется. Оператор печати также никогда не выполняется после 4.

Он не прерывает l oop, l oop все еще выполняется.

count = 0

while count <15:
  if count == 5:
    continue

  # The following is ignored after count = 4
  print(count)
  count += 1
0 голосов
/ 22 апреля 2020

Я думаю, что вам нужно использовать оператор pass вместо continue и изменить отступ (предполагается, что вы хотите печатать цифры от 0-15, а не 5).

pass является эквивалентом бездействия

count = 0

while count <15:
   if count == 5:
      pass
   else:
      print(count)
   count += 1

continue переводит код в конец l oop. Это означает, что когда count равно 5, l oop идет до конца, и значение count никогда не увеличивается и застревает в бесконечном l oop.

Взгляните на операторы break, pass и continue

0 голосов
/ 22 апреля 2020

Оператор continue в Python возвращает элемент управления в начало текущего l oop. При обнаружении l oop начинает следующую итерацию без выполнения оставшихся операторов в текущей итерации. Когда значение в вашем l oop становится равным 5, оно остается равным 5, поскольку l oop возвращается к началу без увеличения счетчика. Следующий код может помочь вам получить его:

count = 0
while count < 15 :
   count += 1
   if count == 5 :
     continue 
print(count) 
...