开发者

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.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜