在下面的代码中,我希望当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`
答案 0 :(得分:1)
您可能想要的实际上是在continue
上hist[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")
)。