在while循环python中继续执行语句

时间:2020-04-22 08:38:45

标签: python while-loop break continue

我是python的初学者,使用此代码遇到麻烦:

count = 0

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

当count的值= 5时,它就像有一个break语句一样停止了循环。 为什么会这样呢? 请帮忙!

3 个答案:

答案 0 :(得分:3)

continue语句将忽略循环的其余部分,并返回到顶部。该计数永远不会更新,因为count += 1会被忽略,因此从这一点开始计数始终为5,并且始终执行continue语句。打印语句也不会在4点以后执行。

它不会中断循环,循环仍在运行。

count = 0

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

  # The following is ignored after count = 4
  print(count)
  count += 1

答案 1 :(得分:0)

我认为您需要使用pass语句而不是continue并更改缩进(这是假设您要打印0-15而不是5的数字)。

pass等同于不执行任何操作

count = 0

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

continue将代码带到循环的结尾。这意味着当count为5时,循环结束,并且count的值从不增加,并且陷入无限循环。

看看break, pass and continue statements

答案 2 :(得分:-1)

Python中的continue语句将控件返回到当前循环的开始。遇到这种情况时,循环将开始下一次迭代,而不执行当前迭代中的其余语句。当您的循环中的count变为5时,由于循环返回到开始而不增加count,因此它仍为5。以下代码可能会帮助您:

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