¿En qué casos es mejor aplicar list comprehensions y en qué otros son mejores las high order functions? . Me parece que es más fácil y rá...

Pregunta de la clase:
Proyecto: filtrando datos
David Eduardo Bueno Núñez

David Eduardo Bueno Núñez

Pregunta
student
hace 5 años

¿En qué casos es mejor aplicar list comprehensions y en qué otros son mejores las high order functions?
.
Me parece que es más fácil y rápido utilizar las list comprehensions. Pero no sé cual opción es más optima.

2 respuestas
    Marvin Alvarenga

    Marvin Alvarenga

    student
    hace 5 años

    Es un dilema la verdad y me pasa a mi igual. Te quiciera compartir mi opinión al respecto:

    Cuando hacemos list comprehension, lo que estamos haciendo es crear una lista nueva, la cual ocupa espacio en memoria osea que cada elemento de la nueva lista vive en memoria. Para listas pequeñas esto no es un problema, pero para darle tratamiento a lista que son muy muy grandes puede llegar a ser un problema porque tienen que vivir en RAM.

    Cuando usamos map, filter o reduce, funcionan un poco distinto, ellas no cargan en memoria todos los elementos, lo que cargan en memoria es "la manera o la formula de obtener los elementos uno por uno". Claro que cuando lo combertimos a lista pues sí se carga en memoria y pierde un poco su sentido.

    Yo diría que la diferencia se va a notar grandemente cuando tengamos muchoos datos a filtrar, y no queremos cargarlos en memoria. Luego podemos iterar sobre el filter y nos va a ir devolviendo uno por uno sin cargarlos todos en memoria y podemos ir trabajando.

    David Eduardo Bueno Núñez

    David Eduardo Bueno Núñez

    student
    hace 5 años

    Ahora entiendo, ¡gracias!

Curso de Python: Comprehensions, Lambdas y Manejo de Errores

Curso de Python: Comprehensions, Lambdas y Manejo de Errores

Fortalece tus habilidades para profesionalizarte con Python, uno de los lenguajes más utilizados en el mundo en desarrollo backend, ciencia de datos e inteligencia artificial. Aprende conceptos y practica con retos que elevarán tu nivel al programar.

Curso de Python: Comprehensions, Lambdas y Manejo de Errores
Curso de Python: Comprehensions, Lambdas y Manejo de Errores

Curso de Python: Comprehensions, Lambdas y Manejo de Errores

Fortalece tus habilidades para profesionalizarte con Python, uno de los lenguajes más utilizados en el mundo en desarrollo backend, ciencia de datos e inteligencia artificial. Aprende conceptos y practica con retos que elevarán tu nivel al programar.