Python 如何在内部循环得到答案后中断整个嵌套循环
答案被打印两次,这意味着循环在中断后仍然继续。在得到所需的答案后,如何停止整个循环?如果您可以将所有代码放入一个函数中,那么当值为内部循环计算的结果时,可以调用return。它看起来像这样Python 如何在内部循环得到答案后中断整个嵌套循环,python,break,Python,Break,答案被打印两次,这意味着循环在中断后仍然继续。在得到所需的答案后,如何停止整个循环?如果您可以将所有代码放入一个函数中,那么当值为内部循环计算的结果时,可以调用return。它看起来像这样 for a in range(1,1000): for b in range(1,1000): c2 = a**2 + b**2 c = c2**0.5 if a + b + c == 1000: answer = a * b
for a in range(1,1000):
for b in range(1,1000):
c2 = a**2 + b**2
c = c2**0.5
if a + b + c == 1000:
answer = a * b * c
print(answer)
break
def fun():
for a in range(1,1000):
for b in range(1,1000):
c2 = a**2 + b**2
c = c2**0.5
if a + b + c == 1000:
answer = a * b * c
return answer
print(fun())
或者您可以设置一个标志来停止外部循环,如下所示
for a in range(1,1000):
for b in range(1,1000):
c2 = a**2 + b**2
c = c2**0.5
if a + b + c == 1000:
answer = a * b * c
print(answer)
break
def fun():
for a in range(1,1000):
for b in range(1,1000):
c2 = a**2 + b**2
c = c2**0.5
if a + b + c == 1000:
answer = a * b * c
return answer
print(fun())
还有另一种方式:
stop_now = False
for a in range(1, 1000):
for b in range(1, 1000):
c2 = a ** 2 + b ** 2
c = c2 ** 0.5
if a + b + c == 1000:
answer = a * b * c
print(answer)
stop_now = True
break
if stop_now:
break
在外部循环中使用布尔值来知道内部循环是否找到了它,或者在方法内部执行该操作并使用
return