Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Machine Learning
1 Listas por comprensión
Logros de la Sesión
Ejemplo de sintaxis
numeros = [1,2,3,4,5,6,7,8]
r1 = []
for e in numeros:
e = e*2
r1.append(e)
print(r1)
r3 = []
for e in strings:
e = e.upper()
r3.append(e)
print(r3)
texto = "10,
texto 20, 20,
= "10, 33, 33,
40, 40,
11, 11,
90" 90"
Problema 3:
texto = "10,20, 33, 40, 11, 90"
lista = [int(x) for x in texto.split(',')]
print(lista)
suma = sum([x for x in lista if x % 10 == 0])
print(suma)
List Comprehension Anidado
Ejemplo de sintaxis con for anidados:
Dados el conjunto C, definir una lista que sea la suma de las filas y
calcular el total de todos los valores.
# Matriz: Lista de Lista
C = [ [2, 3, 4],
[40, 50, 60],
[100, 200, 300] ]
Solución de List Comprehension
# suma por filas
sum_row1 = [sum(x) for x in C]
print(sum_row1)
# equivalente usando for
sum_row2 = []
for row in C:
subtotal = sum(row)
sum_row2.append(subtotal)
print(sum_row2)
# suma total
total1 = sum([x for row in C for x in row])
print(total1)
# equivalente usando for
total2 = 0
for row in C:
for x in row:
total2 += x
print(total2)
List Comprehension para ingreso de datos
Escribir un programa que permita ingresar n números y genere una lista:
# llamada usando for
n = int(input("Cantidad \#1: "))
lista1 = []
for i in range(n):
value = int(input(f"Ingrese \{i+1\}:"))
lista1.append(value)
# mostrando listas
print("Lista 1:", lista1)
print("Lista 2:", lista2)
print("Lista 3:", lista3)
Evaluación
Responda las siguientes preguntas:
1. ¿Qué es Comprehension?
2. ¿Cuál es la ventaja de comprehension?
3. Respecto al tipo de colección ¿Existe comprehension para tuplas?
Cierre
En esta sesión hemos aprendido :
● Una forma concisa de declarar listas por medio de List Comprehension.
● Comprehension se basa en la notación por comprensión de conjuntos.
● Un programa conciso y claro permite reducir los errores de codificación.
Gracias
Nos vemos en la siguiente
clase!