Cita de: PUAROT en 30 Diciembre 2016, 14:05 PM
Ok gracias por contestar, es lo que me imaginaba
Existe alguna forma de usar y acceder a los elementos creados con un generador como si de una lista se tratase ?
No tengo en mente ahora mismo ningún caso practico en mente, simplemente es por aprender el funcionamiento de los generadores.
Gracias otra vez !
La verdad lo dudo, es más, analiza un poco la estructura del generador que colocas como ejemplo en el primer comentario. Si quisieras acceder como si fuera una lista al décimo elemento, tendrías que generar TODOS los diez elemtos para poder mostrar el décimo. ahora, siquisieras mostrar el elemento 20, tendrías, que, de nuevo generar TODOS los 20 primeros elementos. Así que no tendría mucho sentido.
Creo que te estás confundiendo un poco, así que recuerda que los generadores fueron pensados para obtener una especie de lista de elementos ordenados, pero que se crean cuando se necesitan para ahorrar memoria. Son muy eficientes cuando los usas en un for porque recuerda que el for en Python no es un contador sino que recorre cualquier elemento iterable. por lo que si necesitas recorrer los primeros 2000 números en Python, necesitas iterar una lista con los 2000 números, lo que en memoria sería muy ineficiente y los generadores solucionan este problema.
Saludos!