Hola! Vengo en busca de ayuda, estoy tratando de hacer el ejercicio en el que la función que creamos nos tiene que devolver en una lista de un elemento, la suma del producto elemento a elemento las listas que son los parámetros. He probado de distintas formas, pero con el código que escribo, la función siempre termina trabajando solo con los primeros elementos de cada lista. No se como escribirlo para que vaya cambiando el valor por cada uno de los elementos de las listas. adjunto foto de lo que hice. Gracias!
Re: Ejercicio crear una función tallerine 2
Hola Agustina, algunos comentarios
Si vos haces dos for anidados
for i in range(...)
for x in range(..)
esto hace que para cada valor de la variable i recorra todos los valores de la variable x, es decir pone i = 0 y x= 0, x=1...,x=len(lista2)-1, luego pone i= 1 y recorre de nuevo todos los valores de x y así sucesivamente y eso creo que no es lo que vos querrás hacer.
Con un solo for podes recorrer ambas listas ya que sabes que ambas tienen el mismo largo:
for i in range(len(lista1)):
aux = lista1[i]*lista2[i]
esto recorre los indices y va haciendo la multiplicación elemento a elemento.
Pero claro, cuando termina el for tendrías la multiplicación de los últimos elementos de cada lista y no la suma de todos los productos.
Para hacer esa suma en general lo que se hace es inicializar la variable aux en 0 y luego ir sumando lo que tenía aux antes al nuevo producto:
aux = 0
for i in range(len(lista1)):
aux = lista1[i]*lista2[i] + aux
Se entiende?
Si no queda claro pregunta de nuevo.