Matrix drucken in Python
-
Verwenden Sie die
for
-Schleife, um die Matrix in Python zu drucken - Verwenden Sie die List Comprehensions-Methode, um die Matrix in Python zu drucken
Matrizen werden in Mathematik und Statistik häufig zur Darstellung von Daten und zum Lösen mehrerer linearer Gleichungen verwendet. Bei der Programmierung werden 2D-Arrays als Matrix behandelt.
In Python stehen viele Funktionen und Klassen zur Verfügung, um verschiedene Operationen an Matrizen auszuführen. In diesem Tutorial lernen wir, wie man eine Matrix in Python druckt.
Wir zeigen, wie ein 2D-Array normalerweise in Python mit allen eckigen Klammern und ohne richtigen Abstand im folgenden Code gedruckt wird.
import numpy as np
a = np.array([[1, 2, 3], [3, 4, 5], [7, 8, 9]])
print(a)
Ausgabe:
[[1 2 3]
[3 4 5]
[7 8 9]]
In den unten beschriebenen Methoden wird das Array in einem sauberen Matrixformat gedruckt.
Verwenden Sie die for
-Schleife, um die Matrix in Python zu drucken
Diese Methode durchläuft die Matrix mithilfe der for
-Schleife und druckt jede Zeile einzeln, nachdem sie ordnungsgemäß formatiert wurde. Der folgende Code zeigt, wie.
import numpy as np
a = np.array([[1, 2, 3], [3, 4, 5], [7, 8, 9]])
for line in a:
print(" ".join(map(str, line)))
Ausgabe:
1 2 3
3 4 5
7 8 9
Wir verwenden die Funktion map
, die die gesamte Zeile in eine Zeichenkette konvertiert, und wenden dann die Funktion join
auf diese gesamte Zeile an, die alles durch das angegebene Trennzeichen in eine einzelne Zeichenkette und separate Elemente konvertiert.
Verwenden Sie die List Comprehensions-Methode, um die Matrix in Python zu drucken
Das List Comprehensions bietet eine präzise und elegante Möglichkeit, mit Listen in einer einzigen Codezeile zu arbeiten.
Diese Methode verwendet auch die for
-Schleife, wird jedoch als etwas schneller angesehen als die traditionelle Verwendung, wie in der vorherigen Methode.
Nehmen Sie den folgenden Code als Beispiel.
import numpy as np
a = np.array([[1, 2, 3], [3, 4, 5], [7, 8, 9]])
print("\n".join(["".join(["{:4}".format(item) for item in row]) for row in a]))
Ausgabe:
1 2 3
3 4 5
7 8 9
Obwohl der obige Code fast die gleichen Funktionen wie in der vorherigen Methode verwendet, geschieht dies effizienter und in einer Zeile. Der andere Hauptunterschied ist die hier verwendete Funktion format()
, um den erforderlichen Abstand zwischen den Zeichenkettenelementen bereitzustellen.
Eine andere Möglichkeit, dieses Verfahren anzuwenden, ist unten gezeigt. Hier teilen wir den Code separat in einzelne Zeilen auf und versuchen, die Matrix einer tabellenartigen Struktur zu ähneln.
import numpy as np
a = np.array([[1, 2, 3], [3, 4, 5], [7, 8, 9]])
s = [[str(e) for e in row] for row in a]
lens = [max(map(len, col)) for col in zip(*s)]
fmt = "\t".join("{{:{}}}".format(x) for x in lens)
table = [fmt.format(*row) for row in s]
print("\n".join(table))
Ausgabe:
1 2 3
3 4 5
7 8 9
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn