Multiplizieren zweier Listen in Python
-
Multiplizieren zweier Listen in Python mit der Methode
zip()
-
Multiplikation zweier Listen in Python mit der Methode
numpy.multiply()
-
Multiplizieren zweier Listen in Python mit der Funktion
map()
In diesem Tutorial werden verschiedene Methoden demonstriert, um die elementweise Multiplikation zweier Listen in Python durchzuführen. Angenommen, wir haben zwei Listen von ganzen Zahlen mit den gleichen Abmessungen und wollen Elemente der ersten Liste mit den Elementen an der gleichen Position in der zweiten Liste multiplizieren und eine resultierende Liste mit den gleichen Abmessungen erhalten.
Multiplizieren zweier Listen in Python mit der Methode zip()
Die eingebaute Methode zip()
in Python nimmt eine oder mehrere Iterablen und fasst die Iterablen zu einem Tupel zusammen. So werden die Listen [1,2,3]
und [4,5,6]
zu [(1, 4), (2, 5), (3, 6)]
. Mit der Methode map()
greifen wir auf beide Listen elementweise zu und erhalten die gewünschte Liste mit der Methode List Comprehension.
Das folgende Code-Beispiel zeigt, wie man 1D- und 2D-Listen mithilfe von zip()
mit dem List Comprehensions vervielfacht.
list1 = [2, 4, 5, 3, 5, 4]
list2 = [4, 1, 2, 9, 7, 5]
product = [x * y for x, y in zip(list1, list2)]
print(product)
Ausgabe:
[8, 4, 10, 27, 35, 20]
Multiplikation von 2D-Listen:
list1 = [[2, 4, 5], [3, 5, 4]]
list2 = [[4, 1, 2], [9, 7, 5]]
product = [[0] * 3] * 2
for x in range(len(list1)):
product[x] = [a * b for a, b in zip(list1[x], list2[x])]
print(product)
Ausgabe:
[[8, 4, 10], [27, 35, 20]]
Multiplikation zweier Listen in Python mit der Methode numpy.multiply()
Die Methode multiply()
der NumPy
-Bibliothek in Python nimmt zwei Arrays/Listen als Eingabe und gibt nach der Durchführung der elementweisen Multiplikation ein Array/Liste zurück. Diese Methode ist einfach, da wir keine zusätzliche Arbeit für die 2D-Multiplikation leisten müssen, aber der negative Punkt dieser Methode ist, dass sie nicht ohne die NumPy
-Bibliothek verwendet werden kann.
Die folgenden Code-Beispiele zeigen, wie man 1D- und 2D-Listen in Python mit der Methode numpy.multiply()
multipliziert.
- 1D-Multiplikation:
import numpy as np
list1 = [12, 3, 1, 2, 3, 1]
list2 = [13, 2, 3, 5, 3, 4]
product = np.multiply(list1, list2)
print(product)
Ausgabe:
[156 6 3 10 9 4]
- 2D-Multiplikation:
import numpy as np
list1 = [[12, 3, 1], [2, 3, 1]]
list2 = [[13, 2, 3], [5, 3, 4]]
product = np.multiply(list1, list2)
print(product)
Ausgabe:
[[156 6 3]
[ 10 9 4]]
Multiplizieren zweier Listen in Python mit der Funktion map()
Die Funktion map
nimmt eine Funktion und eine oder mehrere Iterablen als Eingabe und gibt eine Iterable zurück, die die angegebene Funktion auf die Eingabelisten anwendet.
Wir können die 1D- und 2D-elementweise Multiplikation von zwei Listen in Python mit der Funktion map()
durchführen, indem wir beide Listen als Argumente an die Funktion map()
übergeben. Die folgenden Code-Beispiele zeigen, wie wir die Funktion map()
verwenden können, um zwei Python-Listen zu multiplizieren.
Beispielcode für 1D-Multiplikation:
list1 = [2, 4, 5, 3, 5, 4]
list2 = [4, 1, 2, 9, 7, 5]
product = list(map(lambda x, y: x * y, list1, list2))
print(product)
Ausgabe:
[8, 4, 10, 27, 35, 20]
Beispielcode für die 2D-Multiplikation:
list1 = [[2, 4, 5], [3, 5, 4]]
list2 = [[4, 1, 2], [9, 7, 5]]
product = [[0] * 3] * 2
for x in range(len(list1)):
product[x] = list(map(lambda a, b: a * b, list1[x], list2[x]))
print(product)
Ausgabe:
[[8, 4, 10], [27, 35, 20]]
Verwandter Artikel - Python List
- Alle Vorkommen eines Elements aus einer Liste in Python entfernen
- Konvertieren eines Dictionaries in eine Liste in Python
- Duplikate aus Liste entfernen in Python
- Wie erhält man den Durchschnitt einer Liste in Python
- Was ist der Unterschied zwischen den Listenmethoden append und extend
- Wie man eine Liste in Python in eine Zeichenkette konvertiert