Python

Trucos para comprensión de listas en Python

La comprensión de listas en Python hace referencia a los procedimientos que se puede utilizar para crear nuevas listas a partir de otras. Algo que también se puede aplicar a otros tipos de colecciones. Para los que usamos Python de forma habitual esta es una técnica habitual con la que se pueden realizar tareas complejas con poco código. Por ejemplo, se puede crear un vector con la longitud de las cadenas de otro simplemente con

frutas = ["fresas", "manzana", "pera"]
longitud = [len(x) for x in frutas]
longitud
[6, 7, 4]

Por lo que se puede ver, solamente se ha necesitado una línea de código. Algo que además es fácil de comprender para los usuarios familiarizados con la comprensión de listas en Python.

Comprensión de listas básicas en Python

La compresión de listas es algo relativamente sencillo como se ha visto en la introducción. Simplemente se ha de situar entre corchetes una función que itere sobre una lista, o cualquier otro elemento iterable. Algo que se puede estudiar en el ejemplo anterior. Se aplica la función len(x) a cada uno de los elementos de la lista for x in frutas, lo que se almacena en una nueva lista.

Filtrado de elementos

Algo que también permite la comprensión de listas en Python es aplicar un filtro. Para seleccionar únicamente los elementos que sean de interés. Por ejemplo, se puede obtener únicamente las futuras cuyos nombres tengan una longitud mayor de cuatro caracteres, simplemente añadiendo un if al final con la condición.

[x for x in frutas if len(x) > 4]
['fresas', 'manzana']

Generar un diccionario mediante comprensión

Como se ha comentado en la introducción, la comprensión se puede utilizar también para crear cualquier tipo de colección. Entre las que se encuentran los diccionarios. Una vez creada la segunda lista se puede combinar con la primera mediante el método zip e inyectar estas en un diccionario. Por lo que simplemente utilizando el siguiente ejemplo se puede construir un diccionario donde la clave es la fruta y en valor la longitud de la cadena.

dict(zip(frutas, longitud))
{'fresas': 6, 'manzana': 7, 'pera': 4}

Conclusiones

En esta entrada hemos vistos los fundamentos de la compresión de listas en Python. Una técnica con la que es posible crear fácilmente nuevas listas de una forma compacta y fácil.

Imagen de Gayathiri Gengatharan en Pixabay

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez
Tags: Truco

Recent Posts

Errores comunes al interpretar resultados estadísticos

La estadística no suele fallar en los cálculos: falla en la interpretación. El test está…

4 días ago

Dashboard CLV: cuatro modelos, un mismo dataset, conclusiones muy distintas

Los artículos anteriores de esta serie cubrieron cuatro formas de mirar el valor del cliente:…

6 días ago

Curiosidad: Por qué la criptografía habla siempre de Alice y Bob

Quien se acerca a la criptografía descubre enseguida a dos personajes que aparecen en casi…

2 semanas ago

Desbalanceo de Clases en Credit Scoring: Por Qué Usamos Ponderación en lugar de Undersampling

En credit scoring el desbalanceo de clases es la norma, no la excepción. En una…

2 semanas ago

Curiosidad: El “bug”, la polilla y la leyenda de Grace Hopper

Cualquiera que programe usa la palabra bug a diario para referirse a un fallo en…

3 semanas ago

BG/BB: el modelo de CLV para compras en períodos discretos

Los dos artículos anteriores de la serie cubrieron BG/NBD, el modelo para negocios donde el…

3 semanas ago

This website uses cookies.