lapiceroazul4 / Ingenieria-Datos-IA-Roadmap-UAO

This repository will serve as a resource to store guidelines, advice, and an overview of the career and various subjects you will encounter along the way.
10 stars 0 forks source link

No logro entender cuando resulta más conveniente usar un ciclo for y cuando un ciclo while #1

Closed lapiceroazul4 closed 4 months ago

lapiceroazul4 commented 4 months ago

Hola me llamo Santiago, estoy en 2 semestre y estoy aprendiendo Python y tengo una duda sobre cuándo es más conveniente usar un ciclo for en lugar de un ciclo while. Entiendo que ambos se pueden usar para repetir un bloque de código, pero no estoy seguro de cuál es la mejor práctica para decidir cuál utilizar en diferentes situaciones.

Por ejemplo, si quiero recorrer una lista de números y sumar sus elementos, podría usar un ciclo for como este:

numeros = [1, 2, 3, 4, 5]
suma = 0

for num in numeros:
    suma += num

print(suma)

O podría usar un ciclo while de esta manera:

numeros = [1, 2, 3, 4, 5]
suma = 0
i = 0

while i < len(numeros):
    suma += numeros[i]
    i += 1

print(suma)
SPinzon12 commented 4 months ago

Hola Santiago, cuando conoces el número de elementos que quieres iterar es mas recomendable utilizar el for, en vez del while. Al final es una buena práctica.

Davidmelo9133 commented 4 months ago

Es mejor el for

vamphook972 commented 4 months ago

la mayor diferencia es que while itera infitamente hasta que la condicion que propongas deje de cumplirse, mientras que for si itera las veces que tu requieras, por lo que depende de cada caso, pero por lo general en momentos donde tu no conoces la cantidad de iteraciones que requieres, como cuando le pides un input al usuario pero quieres que sea un dato especifico, tu no sabes cuantas veces el usuario escriba mal el dato que le pides, por lo que es mejor utilizar while. Aun asi for nos da una ventaja y es que tienes una variable que sin ningun otro comando esta creciendo su valor por cada iteracion, eso es realmente util cuando quieres acceder al index de alguna lista o string

En conclusion while utilizalo cuando no conoces la cantidad de veces que necitas iterar, y for utilizalo las veces que conoces la cantidad de iteraciones