🎨
Informática para ingeniería 2023-2024
  • Informática para ingeniería
  • Básico python
  • Estructuras de control
    • while
    • for
    • try...except
    • If, else, elif, while, for
    • Ejemplo. Ciclos anidados. Tablas de multiplicar
    • Método abreviado
    • ¿Qué hace zip() ?
  • Secuencias
  • Comparativas: Cadena, lista, tupla y conjunto
    • Ejemplos listas y funciones: Control de temperatura
    • Verificación del NIF
    • Ejemplo listas: control de temperaturas
  • Secuencias: Matriz
    • Definición: Matriz
    • Localizar valores únicos en una matriz
    • Ejemplo matrices: Suma y Multiplicación
    • verificar si una matriz es cuadrada
  • Funciones
    • Definición: funciones
    • Ejemplo de funciones
  • Módulos
    • Módulo. Definición
    • Ejemplos de Módulos: math y random
  • Método abreviado de comprensión de listas...
    • Comprensión de listas
  • Funciones- Matriz-Ejemplos
    • Ejemplo, cálculo de Nómina mensual
    • Ejemplo, cálculo de Nómina mensual (desde el programa principal)
    • Menú, matriz y funciones
    • Localizar valores únicos en una matriz. Usar Funciones
    • Ejemplo funciones, matriz, archivos: Recuento de votos
    • Matrices 2ª Prueba Evaluación Continua. Curso 2018-2019 Parcial. Prof MRD
    • Prueba Evaluación Continua. Curso 2018-2019. Examen 1. Prof. MRD
    • Gestión de una matriz de números enteros
  • Ejecutable
    • Crear un programa ejecutable
  • Archivo (ficheros)
    • Definición: archivos (ficheros)
  • Ejemplos de Matriz y archivos (ficheros)
    • ¿Cómo se multiplican dos matrices?
    • Crear una matriz a partir de un archivo
    • Pedir datos, guardarlos en una matriz y en un archivo
    • Cálcular la media de unos datos almacenados en un archivo
    • Leer archivo, modificar datos y guardarlos
  • Interfaz Gráfica
    • Definición: Interfaz Gráfica de Usuario (IGU)
      • Label
      • Button
      • Radiobutton y Checkbutton
      • LabelFrame
      • Listbox
      • Entry
      • Características comunes de Label, Entry, button, radiobutton checkbutton
      • ttk.Combobox
      • Tamaño de una ventana
    • Ejemplo de Entorno gráfico: RadioButton
    • Visualizar la especialidad y nombre de un alumno
    • Visualizar los datos introducidos
    • Sumar 10 a un número introducido
    • Cálculo del área de un triángulo
    • Cálculo del área de un Círculo. Y dibujo de un círculo
    • ¿Dos números son divisibles?
    • Introducir valores y graficar
    • Ejemplo de botón, lista
  • Ejemplos de interfaz gráfica y archivos
  • Entorno gráficos y archivos
    • Almacenar los datos de un alumno
Con tecnología de GitBook
En esta página
  1. Método abreviado de comprensión de listas...

Comprensión de listas

En Python, los métodos abreviados como comprensiones de listas y tuplas son herramientas flexibles y pueden ser usados no solo con listas y tuplas, sino con una variedad de tipos de datos iterables. Además, existen estructuras similares para otros tipos de colecciones. Las formas en que se pueden usar estos métodos abreviados:

1. Comprensiones de Lista

Las comprensiones de lista se utilizan principalmente con listas, pero pueden trabajar con cualquier tipo de iterable, como tuplas, diccionarios, cadenas de texto y conjuntos. La estructura básica es:

Sintaxis

[expression for item in iterable if condition]

Esta estructura crea una nueva lista a partir de un iterable existente, aplicando una expresión opcional a cada elemento que cumpla una condición opcional.

2. Comprensiones de Tupla

Técnicamente, no hay "comprensiones de tupla" como tal, pero puedes usar una comprensión de lista o un generador (ver más adelante) dentro de un constructor de tupla para lograr un resultado similar:

Sintaxis

tuple(expression for item in iterable if condition)

Esto generará una tupla basada en la expresión aplicada a un iterable.

3. Comprensiones de Diccionarios

Los diccionarios también pueden beneficiarse de un método abreviado similar, conocido como comprensiones de diccionarios:

Sintaxis

{key_expression: value_expression for item in iterable if condition}

Esto es útil para construir diccionarios de manera directa y eficiente desde iterables.

4. Comprensiones de Conjuntos

Similar a las listas y diccionarios, también puedes crear conjuntos utilizando comprensiones:

Sintaxis

{expression for item in iterable if condition}

Esto crea un conjunto cuyos elementos son el resultado de una expresión aplicada a cada elemento de un iterable, excluyendo duplicados.

5. Generadores

Los generadores son como comprensiones de lista, pero en lugar de crear una lista completa en la memoria, generan un valor a la vez, lo cual es más eficiente en memoria:

Sintaxis

(expression for item in iterable if condition)

Los generadores son especialmente útiles para operar con secuencias de datos grandes o infinitas.

Ejemplo con Varias Comprensiones:

Código

# Lista de nombres
nombres = ["Ana", "Juan", "Pedro", "María"]

# Comprensión de lista para crear una lista de nombres en mayúscula
nombres_mayuscula = [nombre.upper() for nombre in nombres]

# Comprensión de diccionario para crear un diccionario de nombres con su longitud
nombres_longitud = {nombre: len(nombre) for nombre in nombres}

# Comprensión de conjunto para obtener la primera letra de cada nombre, sin duplicados
primeras_letras = {nombre[0] for nombre in nombres}

primeras_letras = {nombre[0] for nombre in nombres}
print(nombres_mayuscula)  # ['ANA', 'JUAN', 'PEDRO', 'María']
print(nombres_longitud)   # {'Ana': 4, 'Juan': 3, 'Pedro': 5, 'María': 4}
print(primeras_letras)    # {'A', 'B', 'C', 'D'}

Estos métodos abreviados hacen que el código sea más legible y a menudo más eficiente.

AnteriorEjemplos de Módulos: math y randomSiguienteEjemplo, cálculo de Nómina mensual

Última actualización hace 1 año