Detener una iteración sin usar `break` en Python 3
Por ejemplo, ¿se puede reescribir este código sinbreak
(y sincontinue
oreturn
)?
import logging
for i, x in enumerate(x):
logging.info("Processing `x` n.%s...", i)
y = do_something(x)
if y == A:
logging.info("Doing something else...")
do_something_else(x)
elif y == B:
logging.info("Done.")
break
EDITAR: Dado que algunas personas critican el uso debreak
ycontinue
dentro de los bucles, me preguntaba si Python permitió escribirfor
bucles sin ellos. Diría que Python no permite esto (y tal vez iría en contra de la regla de "una forma de hacerlo").
EDIT2: Los comentaristas me han hecho notar quereturn
podría usarse en su lugar, pero eso tampoco sería una solución.