在python中如何在中断后继续循环?

时间:2019-08-22 02:59:01

标签: python

在下面的代码中,我希望当hist中的值为零0时,j循环应该中断,但它应适用于最后两个数字7和8 。hist表示bin值。在我的实际代码中,我必须使用bin值绘制图形。对于hist[j]==0,我无法绘制图形,这就是为什么我使用break语句的原因。但是使用下面的代码,当hist的值为7和8时,我无法绘制图形,因为一旦循环中断,我就无法检查它的值7和8。那么如何克服这个问题呢?

hist = [10,0,7,8]  
for j in range(3):
    if hist[j] == 0:
        print("break loop")
        break
    else:
        print("still continue")
        continue`

2 个答案:

答案 0 :(得分:1)

您可能想要的实际上是在continuehist[j] == 0

您不必显式调用continue,因为当循环到达其中的代码的最后一行时,它将返回到顶部。同样,continue是您所描述的:

hist = [10,0,7,7]  
for j in range(3):
    if hist[j] == 0:
        print("break loop")
        continue
    else:
        print("still continue")

答案 1 :(得分:1)

我认为您需要的是

hist = [10, 0, 7, 7]
for i in hist:
    if i == 0:
        print("break loop")
        continue 

    print("still continue")

print("still continue")时,这可以跳过执行i == 0的过程。


break将跳出for循环,continue跳回到循环,而不在循环中执行后面的语句(这里是print("still continue"))。