2011-09-22 17 views
5

Me doy cuenta de que el título puede ser algo confuso, así que me disculpo.¿Cómo salir del lazo solo si se cumple un caso determinado, pero luego continuar la iteración?

Básicamente, este es mi código:

while i < 5: 
    do stuff 
    if i == 3: 
     print "i is 3" 
     break 

Ahora todo lo que suena bastante simple, ¿verdad? Excepto que realmente no quiero SALTAR del circuito tanto como quisiera que comenzara de nuevo. Entonces, en este caso, el resultado deseado sería iterar a través de 1, 2, luego cuando 3 salga, pero luego continúe iterando con 4. ¿Cómo hago eso?

+1

Como señala Matthew, puede usar 'continue' en lugar de' break'. Pero dado que 'continuar' sería la última instrucción en el ciclo de todos modos, simplemente puede eliminar su' break'. –

Respuesta

8
while i < 5: 
    do stuff 
    if i == 3: 
     print "i is 3" 
     continue 
+0

Wow ... Gracias. Lo marcaré como respuesta en el momento en que se me permita hacerlo. –

2

En lugar de break uso continue

Ahora, casi nunca uso continuar como me parece que es por lo general más clara de reelaborar el código para evitarlo. Por supuesto que es muy fácil en este ejemplo, si tiene problemas con un ejemplo más complejo, pregunte sobre ese.

Cuestiones relacionadas