Ejemplos prácticos
Escenarios del mundo real
Las comprensiones de listas y las técnicas de suma tienen numerosas aplicaciones prácticas en diversos dominios de la programación.
Procesamiento de datos
Cálculo de las ventas totales
sales_data = [
{'product': 'laptop', 'price': 1000},
{'product': 'phone', 'price': 500},
{'product': 'tablet', 'price': 300}
]
total_sales = sum([item['price'] for item in sales_data])
Computación científica
Cálculos estadísticos
## Calculate average temperature
temperatures = [22.5, 23.1, 21.8, 24.0, 22.9]
average_temp = sum(temperatures) / len(temperatures)
## Sum of temperatures above 23 degrees
high_temps_sum = sum([temp for temp in temperatures if temp > 23])
Procesamiento de texto
Análisis de la longitud de las palabras
words = ['python', 'programming', 'comprehension', 'example']
total_word_length = sum([len(word) for word in words])
Comparación de rendimiento
Método |
Complejidad |
Legibilidad |
Rendimiento |
Bucle tradicional |
Media |
Media |
Más lento |
Comprensión de listas |
Baja |
Alta |
Más rápido |
Expresión generadora |
Baja |
Alta |
Más eficiente |
Filtrado y suma
## Sum of squared even numbers
numbers = range(1, 11)
squared_even_sum = sum([x**2 for x in numbers if x % 2 == 0])
Flujo de trabajo de la comprensión
graph TD
A[Input Data] --> B{Filter Condition}
B -->|Pass| C[Transform Data]
B -->|Fail| D[Discard]
C --> E[Aggregate/Sum]
E --> F[Result]
Ejemplo avanzado: Análisis de calificaciones
students = [
{'name': 'Alice', 'grades': [85, 90, 92]},
{'name': 'Bob', 'grades': [75, 80, 85]},
{'name': 'Charlie', 'grades': [90, 95, 88]}
]
## Calculate total grades for students with average above 85
high_performers_total = sum([
sum(student['grades'])
for student in students
if sum(student['grades']) / len(student['grades']) > 85
])
Mejores prácticas
- Utiliza las comprensiones para escribir código claro y conciso
- Prefiere las expresiones generadoras para conjuntos de datos grandes
- Mantén las transformaciones simples y legibles
LabEx anima a los desarrolladores a explorar estas poderosas técnicas de Python para escribir código más eficiente y elegante.