Python Leave Loop Early
How do I leave a loo开发者_JS百科p early in python?
for a in b:
if criteria in list1:
print "oh no"
#Force loop i.e. force next iteration without going on
someList.append(a)
Also, in java you can break
out of a loop, is there an equivalent in Python?
continue
and break
is what you want. Python works identically to Java/C++ in this regard.
Firstly, bear in mind it might be possible to do what you want with a list comprehension. So you might be able to use something like:
somelist = [a for a in b if not a.criteria in otherlist]
If you want to leave a loop early in Python you can use break
, just like in Java.
>>> for x in xrange(1,6):
... print x
... if x == 2:
... break
...
1
2
If you want to start the next iteration of the loop early you use continue
, again just as you would in Java.
>>> for x in xrange(1,6):
... if x == 2:
... continue
... print x
...
1
3
4
5
Here's the documentation for break
and continue
. This also covers else
clauses for loops, which aren't run when you break
.
continue
and break
work exactly like in other programming languages, except that you cannot break
to a label (as you can in Java, for example). That means you can only break one loop at a time.
Take a look at break
and continue
.
精彩评论