Open carlosmartellus opened 6 months ago
No necesariamente. En ocasiones es una cualidad necesaria y muy útil para manejar el flujo del programa, sin embargo, su uso excesivo puede que haga difícil entender tu código y, por otro lado, si la única forma de salir de tus iteraciones es a través de un break, puede también ser indicador de que no estás tomando la mejor forma de abordar el problema.
Complementando a @3rdPix : por mi lado, uso bastante eso. Pero he escuchado que es mejor práctica definir el bucle en una función aparte y hacer return en vez de break (evidentemente depende del caso de uso), principalmente porque por lo general cuando haces break estás buscando algo en la lista y es más entendible si defino una función con un nombre descriptivo.
Por ejemplo:
alumno_encontrado = None
for alumno in alumnos:
if alumno.num == 123456:
alumno_encontrado = alumno
break
podría convertirse en
def buscar_alumno_por_num(alumnos, num):
for alumno in alumnos:
if alumno.num == num:
return alumno
alumno_encontrado = buscar_alumno_por_num(alumnos, 123456)
En el segundo caso, el código se ve más limpio, es más fácil de mantener (porque es más modular) y es más fácil de leer también, porque ahora sé que la función buscar_alumno_por_num
va a buscar un alumno por num, entonces puedo concentrarme en hacer esa función bien y luego olvidarme de lo que hay dentro, usarlo como "caja negra" (función que sabemos qué retorna, pero no qué hace para retornarlo).
Prerrequisitos
(Marcar colocando una
X
entre los corchetes los ítems que ya hiciste, así:"[X]"
)Se considera mala práctica usar un break para salir de un bucle, ya sea while o for?