Python-Programm zum Transponieren einer Matrix

In diesem Beispiel lernen Sie, eine Matrix zu transponieren (die mithilfe einer verschachtelten Liste erstellt wird).

Um dieses Beispiel zu verstehen, sollten Sie die folgenden Python-Programmierthemen kennen:

  • Python für Loop
  • Python-Liste

In Python können wir eine Matrix als verschachtelte Liste implementieren (Liste innerhalb einer Liste). Wir können jedes Element als eine Zeile der Matrix behandeln.

Zum Beispiel X = ((1, 2), (4, 5), (3, 6))würde eine 3x2-Matrix darstellen. Die erste Zeile kann als ausgewählt werden X(0). Das Element in der ersten Spalte der ersten Zeile kann als ausgewählt werden X(0)(0).

Die Transponierung einer Matrix ist das Vertauschen von Zeilen und Spalten. Es wird als X 'bezeichnet. Das Element in der i-ten Zeile und der j-ten Spalte in X wird in der j-ten Zeile und der i-ten Spalte in X 'platziert. Wenn X also eine 3x2-Matrix ist, ist X 'eine 2x3-Matrix.

Hier sind einige Möglichkeiten, um dies in Python zu erreichen.

Matrixtransponieren mit verschachtelter Schleife

 # Program to transpose a matrix using a nested loop X = ((12,7), (4 ,5), (3 ,8)) result = ((0,0,0), (0,0,0)) # iterate through rows for i in range(len(X)): # iterate through columns for j in range(len(X(0))): result(j)(i) = X(i)(j) for r in result: print(r) 

Ausgabe

 (12, 4, 3) (7, 5, 8) 

In diesem Programm haben wir verschachtelte forSchleifen verwendet, um jede Zeile und jede Spalte zu durchlaufen. An jedem Punkt setzen wir das Element X (i) (j) in Ergebnis (j) (i).

Matrixtransponieren mit Nested List Comprehension

 ''' Program to transpose a matrix using list comprehension''' X = ((12,7), (4 ,5), (3 ,8)) result = ((X(j)(i) for j in range(len(X))) for i in range(len(X(0)))) for r in result: print(r)

Die Ausgabe dieses Programms ist die gleiche wie oben. Wir haben das Verständnis verschachtelter Listen verwendet, um jedes Element in der Matrix zu durchlaufen.

Interessante Beiträge...