Punktprodukt in Python berechnen

Vaibhhav Khetarpal 10 Oktober 2023
  1. Verwenden Sie das *-Zeichen, um das Punktprodukt von zwei Skalaren in Python zu berechnen
  2. Verwenden Sie die Funktion numpy.dot(), um das Skalarprodukt zweier Arrays oder Vektoren in Python zu berechnen
  3. Verwenden Sie die Funktion sum(), um das Punktprodukt zweier Arrays oder Vektoren in Python zu berechnen
  4. Verwenden Sie die Funktion map() zusammen mit der Funktion mul(), um das Punktprodukt zweier Arrays oder Vektoren in Python zu berechnen
  5. Verwendung der Bibliothek more_itertools zur Berechnung des Punktprodukts von zwei Arrays oder Vektoren in Python
Punktprodukt in Python berechnen

In diesem Tutorial werden die verschiedenen Methoden zur Berechnung des Skalarprodukts zweier Arrays oder Vektoren in Python vorgestellt.

Bevor wir zu den verschiedenen Methoden zur Implementierung übergehen, lernen wir zunächst das dot-Produkt in Python kennen.

Wie Sie vielleicht wissen, ist ein Punktprodukt, manchmal sogar als Skalarprodukt bezeichnet, eine algebraische Operation, die zwischen zwei beliebigen angegebenen Arrays ausgeführt wird; sie können skalar oder vektoriell sein. Die Ausgabe ist immer eine einzelne Zahl.

Python erlaubt die Berechnung des Skalarprodukts zweier Arrays, sofern die Längenfolgen beider Arrays ähnlich sind.

Verwenden Sie das *-Zeichen, um das Punktprodukt von zwei Skalaren in Python zu berechnen

Die Skalare werden auch als 0-dimensionale Arrays bezeichnet und einfach wie numerische Standardwerte behandelt. Das Punktprodukt dazwischen wäre das gleiche wie das Produkt der beiden Skalare.

Obwohl die unten genannten Methoden auch für Skalare funktionieren würden, ist dies eine relativ einfachere Möglichkeit, den Prozess ohne zusätzlichen Aufwand durchzuführen.

Der folgende Code verwendet das Zeichen *, um das Punktprodukt zweier Skalare in Python zu berechnen.

dotp = 2 * 5
print(dotp)

Der obige Code liefert die folgende Ausgabe:

10

Verwenden Sie die Funktion numpy.dot(), um das Skalarprodukt zweier Arrays oder Vektoren in Python zu berechnen

Der Begriff NumPy ist ein Akronym für Numerical Python. Diese Bibliothek ermöglicht die Verwendung von Arrays in Python. Es bietet auch Funktionen, die bei der Manipulation dieser Arrays helfen.

Die Funktion numpy.dot() ist eine Funktion, die speziell entwickelt wurde, um das Punktprodukt zwischen zwei Arrays zu finden. Das Modul NumPy muss in den Python-Code importiert werden, damit es fehlerfrei läuft.

Um diese Implementierung im Python-Code zu erklären, nehmen wir zwei Listen und geben das Punktprodukt zurück.

Der folgende Code verwendet die Funktion numpy.dot(), um das Punktprodukt zweier Arrays oder Vektoren in Python zu berechnen.

import numpy as np

x = [5, 10]
y = [4, -7]
dotp = np.dot(x, y)
print(dotp)

Der obige Code liefert die folgende Ausgabe:

-50

Der obige Code funktioniert auch für zweidimensionale Arrays. Sie können die Antworten leicht bestätigen, indem Sie das Punktprodukt im wirklichen Leben schnell selbst finden. Diese Funktion liefert bei richtiger Anwendung genaue Ergebnisse.

Dieselbe Funktion kann für Skalare wie folgt verwendet werden:

import numpy as np

dotp = np.dot(2, 5)
print(dotp)

Der obige Code liefert die folgende Ausgabe:

10

Python 3.5 hat den Operator @ eingeführt, um das Punktprodukt von n-dimensionalen Arrays zu berechnen, die mit NumPy erstellt wurden. Diese Methode wird in der neueren Version von Python häufig verwendet. Wir sollten beachten, dass es nicht auf allgemeinen Listen funktioniert.

Verwenden Sie die Funktion sum(), um das Punktprodukt zweier Arrays oder Vektoren in Python zu berechnen

Ein älterer pythonischer Weg wäre, die Funktion sum() zu verwenden und einige allgemeine Anpassungen vorzunehmen, um das Punktprodukt zwischen zwei Arrays in Python zu berechnen.

Die Funktion zip() ist eine in Python integrierte Funktion und wird hier zusammen mit der Funktion sum() verwendet, um die gegebenen Arrays zu kombinieren.

Hier werden wir auch List Comprehension verwenden, um den Code kompakter zu machen.

Der folgende Code verwendet die Funktion sum(), um das Punktprodukt zweier Arrays oder Vektoren in Python zu berechnen.

x = [5, 10]
y = [4, -7]
print(sum([i * j for (i, j) in zip(x, y)]))

Der obige Code liefert die folgende Ausgabe:

-50

Verwenden Sie die Funktion map() zusammen mit der Funktion mul(), um das Punktprodukt zweier Arrays oder Vektoren in Python zu berechnen

Die Funktion map() wird verwendet, um ein Kartenobjekt zurückzugeben, nachdem eine gegebene Funktion auf alle Elemente des ausgewählten Iterables angewendet wurde.

Die Funktion mul() ist, wie der Name schon sagt, eine eingebaute Funktion, um die Aufgabe der Multiplikation zweier Zahlen auszuführen. Die Funktion mul() kann gefunden und verwendet werden, indem sie aus der Bibliothek operator importiert wird.

Der folgende Code verwendet die Funktion map() zusammen mit der Funktion mul(), um das Punktprodukt zweier Arrays oder Vektoren in Python zu berechnen.

from operator import mul

x = [5, 10]
y = [4, -7]
print(sum(map(mul, x, y)))

Der obige Code liefert die folgende Ausgabe:

-50

Verwendung der Bibliothek more_itertools zur Berechnung des Punktprodukts von zwei Arrays oder Vektoren in Python

Die more_iteratertools ist eine Drittanbieterbibliothek mit grosser Präsenz auf der Plattform Github. Es implementiert einfach das bereits vorhandene allgemeine dotproduct itertools-Rezept.

Der folgende Code verwendet die Bibliothek more_itertools, um das Punktprodukt zweier Arrays oder Vektoren in Python zu berechnen.

import more_itertools as mit

a = [5, 10]
b = [4, -7]
print(mit.dotproduct(a, b))

Der obige Code liefert die folgende Ausgabe:

-50
Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

Verwandter Artikel - Python Array

Verwandter Artikel - Python Math