Python - Como sumar dos listas

 
Vista:
sin imagen de perfil

Como sumar dos listas

Publicado por Mikaela (9 intervenciones) el 23/02/2016 01:09:41
Hola, tengo un problema
Estoy preparando un examen de programación y me surgió una duda

Por un lado:
Cómo puedo hacer una función que le pida a un usuario dos vectores "listas" de igual o diferente largo y le devuelva la suma de ambos?

Por otra parte:
Cómo puedo calcular el promedio de cada vector y la diferencia entre estos promedios?

1
2
3
promVectorA = sumatoria_a/len(vec_a)
promVectorB = sumatoria_b/len(vec_b)
diferencia = promVectorA - promVectorB

Probé diferentes opciones pero no he tenido el resultado esperado.

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 2.239
Plata
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Introducir una lista de numeros desde un raw_input()

Publicado por xve (1646 intervenciones) el 23/02/2016 10:13:29
Hola Mikaela, una manera de introducir una lista puede ser obteniendo los valores separados por espacios... algo así:
1
2
3
s = raw_input("Indica los valores separados por espacios: ")
numbers = map(int, s.split())
print numbers
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 2.239
Plata
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Juntar dos listas

Publicado por xve (1646 intervenciones) el 23/02/2016 10:15:54
Hola Mikaela, para juntar dos listas, es tan sencillo como utilizar extend():

1
2
3
4
a=[1,2]
b=[3,4]
a.extend(b)
print a

Este ejemplo devolverá [1, 2, 3, 4]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Juntar dos listas

Publicado por Mikaela (9 intervenciones) el 23/02/2016 14:18:22
hola, gracias por responder
eso lo se, lo que quiero es sumarlos no juntarlos

a=[1,2]
b=[1,2,3]

suma=[2,4,3]

y después hacer la diferencia de los promedios
promedio a = 1.5
promedio b = 2

diferencia = 0.5
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 2.239
Plata
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Juntar dos listas

Publicado por xve (1646 intervenciones) el 23/02/2016 18:28:32
Hola Mikaela, perdón, no te había entendido bien...

para sumar seria algo así... creo que se podría optimizar, pero ahora no se me ocurre como:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
a=[1,2]
b=[1,2,3]
 
suma=[]
if len(a)>len(b):
	for i in range(len(a)):
		if len(b)>i:
			suma.append(a[i]+b[i])
		else:
			suma.append(a[i])
else:
	for i in range(len(b)):
		if len(a)>i:
			suma.append(a[i]+b[i])
		else:
			suma.append(b[i])
 
print suma
 
def suma(lista):
	total=0
	for i in range(len(lista)):
		total+=lista[i]
	return total
 
media_a=suma(a)/float(len(a))
print media_a
media_b=suma(b)/float(len(b))
print media_b

Te sirve?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Juntar dos listas

Publicado por Mikaela (9 intervenciones) el 23/02/2016 18:36:38
Buenísimo! Muchas gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar