Как я оставляю цикл рано в 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)
Кроме того, в Java Вы можете break
из цикла, там эквивалент в Python?
Продолжить
и Break
- это то, что вы хотите. Python работает идентично Java / C ++ в этом отношении.
Во-первых, имейте в виду, что можно делать то, что вы хотите, с пониманием списка. Таким образом, вы могли бы использовать что-то вроде:
somelist = [a for a in b if not a.criteria in otherlist]
Если вы хотите выйти из цикла раньше в Python, вы можете использовать break
, как и в Java.
>>> for x in xrange(1,6):
... print x
... if x == 2:
... break
...
1
2
Если вы хотите начать следующую итерацию цикла раньше, используйте continue
, как и в Java.
>>> for x in xrange(1,6):
... if x == 2:
... continue
... print x
...
1
3
4
5
Вот документация для break
и continue
. Это также касается предложений else
для циклов, которые не запускаются, когда вы break
.
continue
и break
работают точно так же, как и в других языках программирования, за исключением того, что вы не можете break
на метку (как, например, в Java). Это означает, что вы можете разорвать цикл по одному за раз.