Las comprensiones en Python son una forma concisa y eficiente de crear listas, diccionarios, conjuntos o generadores a partir de otras colecciones. Permiten escribir código más limpio y legible al reducir la cantidad de líneas necesarias para realizar una operación común.
Las comprensiones de listas nos proporcionan una forma corta y concisa de crear listas. Se usan con corchetes [] y en su interior contienen una expresión seguida de un bucle for y cero o más sentencias for o if. La expresión puede ser cualquier cosa que se te ocurra, lo que significa que puedes usar cualquier tipo de objetos en la lista. El resultado es una nueva lista creada tras evaluar las expresiones que haya dentro.
La sintaxis básica de una list comprehension es la siguiente:
nueva_lista = [expresion for elemento in lista_original if condicion]
expresion es una expresión que define cómo se transformarán los elementos de la lista original para obtener los elementos de la nueva lista.
elemento es una variable que representa cada elemento de la lista original mientras se recorre.
lista_original es la lista de origen de la cual se obtendrán los elementos.
condicion es una condición opcional que filtra los elementos de la lista original.
Son una característica de Python que nos permite crear diccionarios de forma concisa y eficiente utilizando una sintaxis compacta. Son una forma elegante de transformar o filtrar elementos de una secuencia para crear un nuevo diccionario.
La sintaxis básica de una dictionary comprehension es la siguiente:
nuevo_diccionario = {clave_expresion: valor_expresion for elemento in secuencia if condicion}
clave_expresion es una expresión que define cómo se generarán las claves del nuevo diccionario.
valor_expresion es una expresión que define cómo se generarán los valores del nuevo diccionario.
elemento es una variable que representa cada elemento de la secuencia mientras se recorre.
secuencia es la secuencia de origen de la cual se obtendrán los elementos.
condicion es una condición opcional que filtra los elementos de la secuencia.