Possible Duplicate:
How to break out of multiple loops in Python?
有没有比抛出异常更容易脱离嵌套循环的方法?(在Perl中,您可以为每个循环提供标签,至少可以继续一个外部循环。)
for x in range(10):
for y in range(10):
print x*y
if x*y > 50:
"break both loops"
也就是说,有没有比以下更好的方法:
class BreakIt(Exception): pass
try:
for x in range(10):
for y in range(10):
print x*y
if x*y > 50:
raise BreakIt
except BreakIt:
pass
如果能够将循环代码提取到函数中,则可以使用
return
语句随时退出最外层的循环。如果很难提取该函数,可以使用内部函数,如@bjd2385所示
至少有人提出过,但也有人提出过。我认为除了重复测试或重新组织代码之外,没有其他方法。有时候有点烦人。
在rejection message中,van Rossum提到使用
return
,这是非常明智的,也是我个人需要记住的。:)同样适用于更深的循环:
相关问题 更多 >
编程相关推荐