produit scalaire en python [fermé]
-
28-09-2019 - |
Question
Est-ce que ce code Python réellement trouver le produit scalaire de deux vecteurs?
import operator
vector1 = (2,3,5)
vector2 = (3,4,6)
dotProduct = reduce( operator.add, map( operator.mul, vector1, vector2))
La solution
Vous pouvez également utiliser la mise en œuvre de numpy point produit qui a de grandes optimisations du tableau dans le code natif pour faire des calculs un peu plus rapide. Mieux encore, à moins que vous essayez d'écrire spécifiquement une routine de produit scalaire ou éviter les dépendances, en utilisant une bibliothèque largement utilisé éprouvée est beaucoup mieux que vos propres modèles.
Autres conseils
Oui, il le fait. Voici une autre façon
>>> sum(map( operator.mul, vector1, vector2))
48
et un autre qui n'utilise pas du tout operator
>>> vector1 = (2,3,5)
>>> vector2 = (3,4,6)
>>> sum(p*q for p,q in zip(vector1, vector2))
48
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow