¿Este código de Python realmente encuentra el producto de punto de dos vectores?producto de punto en python
import operator
vector1 = (2,3,5)
vector2 = (3,4,6)
dotProduct = reduce(operator.add, map(operator.mul, vector1, vector2))
¿Este código de Python realmente encuentra el producto de punto de dos vectores?producto de punto en python
import operator
vector1 = (2,3,5)
vector2 = (3,4,6)
dotProduct = reduce(operator.add, map(operator.mul, vector1, vector2))
También puede utilizar la aplicación de numpy dot product que tiene grandes optimizaciones de matriz en código nativo para hacer cálculos ligeramente más rápido . Incluso mejor, a menos que intente específicamente escribir una rutina de producto de puntos o evitar dependencias, usar una biblioteca ampliamente probada y probada es mucho mejor que rodar la suya.
Sí lo hace. Aquí es otra forma
>>> sum(map(operator.mul, vector1, vector2))
48
y otro que no utiliza en absoluto operator
>>> vector1 = (2,3,5)
>>> vector2 = (3,4,6)
>>> sum(p*q for p,q in zip(vector1, vector2))
48
bueno, lo único es que te perdiste el [] de la lista de comprensión. – chuse
@chuse, no hay una lista de comprensión, es una expresión del generador –
wow, no sabía que esto existía. De hecho, siempre usé cosas como 'sum (map (lambda x: f (x), list))', luego fui a 'sum ([f (x) for x in list])', ahora puedo hacerlo 'suma (f (x) para x en la lista)'. Guay. – chuse
............... ¿sí? – Amber
Parece que sí, sí, ¿por qué estás preguntando? –
Esto debería haberse preguntado mejor "Cómo hacer un producto de punto en (Python) Vanilla", o algo por el estilo. – ThorSummoner