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.

Respuestas a la pregunta(4)

Su respuesta a la pregunta