Heim > Backend-Entwicklung > Python-Tutorial > Python-Programm: Vertauschen Sie die Positionen des ersten und letzten Elements in einer Matrix zwischen Spalten

Python-Programm: Vertauschen Sie die Positionen des ersten und letzten Elements in einer Matrix zwischen Spalten

王林
Freigeben: 2023-09-08 16:29:07
nach vorne
866 Leute haben es durchsucht

Python-Programm: Vertauschen Sie die Positionen des ersten und letzten Elements in einer Matrix zwischen Spalten

Eine Matrix ist ein zweidimensionales Array, das aus vielen in Zeilen und Spalten angeordneten Zahlen besteht. Python verfügt über keinen Datentyp zur Darstellung von Matrizen, wir können jedoch verschachtelte Listen oder NumPy-Arrays als Matrizen verwenden.

Sehen Sie sich die folgenden Eingabe- und Ausgabeszenarien an, um zu erfahren, wie Sie die ersten und letzten Spaltenelemente einer Matrix austauschen.

Eingabe- und Ausgabeszenarien

Angenommen, wir haben eine 3X3-Matrix, die durch eine Liste von Listen dargestellt wird. Die Ausgabematrix ist die resultierende Matrix aus dem Austausch der ersten und letzten Spaltenelemente.

Input matrix: 
[1, 3, 4]
[4, 5, 6]
[7, 8, 3]
Output matrix: 
[4, 3, 1]
[4, 5, 6]
[3, 8, 7]
Nach dem Login kopieren

Betrachten wir eine andere Matrix, bei der die Zeilen und Spalten nicht gleich sind.

Input matrix: 
['a', 'b']
['c', 'd', 'e']
['f', 'g', 'h', 'i']

Output matrix: 
['b', 'a']
['e', 'd', 'c']
['i', 'g', 'h', 'f']
Nach dem Login kopieren

Sehen wir uns verschiedene Möglichkeiten an, das erste und letzte Element in einer Matrix spaltenübergreifend auszutauschen.

Spalten tauschen

Wir können einfach das erste und letzte Element in der Matrix spaltenübergreifend austauschen, indem wir die ersten und letzten Spaltenelemente der Matrix vertauschen.

Beispiel

Erstellen Sie eine Matrix mithilfe einer Liste von Listen, damit wir Listenindizierungstechniken anwenden können, um Elemente auszutauschen.

matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

#function for displaying matrix
def display(matrix):
   for row in matrix:
      print(row)
   print()

# displaying original matrix
print("Original matrix: ")
display(matrix)

# swap column elements
def swapColumns(matrix):
   for i in range(len(matrix)):
      t = matrix[i][0]
      matrix[i][0] = matrix[i][-1]
      matrix[i][-1] = t
   return matrix

# displaying changed matrix
print("Changed matrix: ")
display(swapColumns(matrix))
Nach dem Login kopieren

Ausgabe

Original matrix: 
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]

Changed matrix: 
[3, 2, 1]
[6, 5, 4]
[9, 8, 7]
Nach dem Login kopieren

Die angegebene Matrix ist eine quadratische Matrix und wir haben das erste und das letzte Element der angegebenen Matrix erfolgreich über Spalten hinweg ausgetauscht. Dies geschieht mithilfe der positiven und negativen Python-Indizierung.

Beispiel

In diesem Beispiel werden wir die Spaltenelemente einer nichtquadratischen Matrix vertauschen.

matrix = [['a', 'b'], ['c', 'd', 'e'], ['f', 'g', 'h', 'i']]

#function for displaying matrix
def display(matrix):
   for row in matrix:
      print(row)
   print()

# displaying original matrix
print("Original matrix: ")
display(matrix)

# swap column elements
def swapColumns(matrix):
   for i in range(len(matrix)):
      t = matrix[i][0]
      matrix[i][0] = matrix[i][-1]
      matrix[i][-1] = t
   return matrix

# displaying changed matrix
print("Changed matrix: ")
display(swapColumns(matrix))
Nach dem Login kopieren

Ausgabe

Original matrix: 
['a', 'b']
['c', 'd', 'e']
['f', 'g', 'h', 'i']

Changed matrix: 
['b', 'a']
['e', 'd', 'c']
['i', 'g', 'h', 'f']
Nach dem Login kopieren

Verwenden Sie eine for-Schleife, um die Matrixzeilen zu durchlaufen und Spaltenelemente mithilfe des Index auszutauschen.

Verwenden Sie Listenmanipulationsmethoden

In Python sind pop(), insert() und append() Listenoperationsmethoden. Und die Matrix wird mithilfe einer Liste von Listen erstellt, sodass wir mithilfe dieser Listenmanipulationsmethoden das erste und das letzte Element der Matrix spaltenübergreifend austauschen können.

  • pop() – Die Pop-Methode löscht das Element an der angegebenen Position. Standardmäßig wird das letzte Element entfernt.

Grammatik

list_obj.pop(index)
Nach dem Login kopieren
  • insert() – Mit dieser Methode kann ein Element an jeder gewünschten Position eingefügt werden. Diese Methode akzeptiert zwei Parameter, ein Element und den Index, an dem das Element eingefügt werden muss.

Grammatik

list_obj.insert(index, element)
Nach dem Login kopieren
  • append() – Methode wird verwendet, um ein Element am Ende der Liste hinzuzufügen.

Grammatik

list_obj.append(item)
Nach dem Login kopieren

Beispiel

Lassen Sie uns ein Beispiel nehmen und die Methoden pop(), insert() und append() anwenden.

matrix = [[1, 3], [4, 5, 6], [7, 8, 3, 9]]

#function for displaying matrix
def display(matrix):
   for row in matrix:
      print(row)
   print()

# displaying original matrix
print("Original matrix: ")
display(matrix)

# interchanging the element between first and last columns
for row in matrix:
   temp1 = row[-1]
   temp2 = row[0]
   row.pop()
   row.pop(0)
   row.insert(0, temp1)
   row.append(temp2)

# displaying changed matrix
print("Changed matrix: ")
display(matrix)
Nach dem Login kopieren

Ausgabe

Original matrix: 
[1, 3]
[4, 5, 6]
[7, 8, 3, 9]

Changed matrix: 
[3, 1]
[6, 5, 4]
[9, 8, 3, 7]
Nach dem Login kopieren

Mithilfe temporärer Variablen und Listenmanipulationsmethoden haben wir Spaltenelemente erfolgreich ausgetauscht.

Das obige ist der detaillierte Inhalt vonPython-Programm: Vertauschen Sie die Positionen des ersten und letzten Elements in einer Matrix zwischen Spalten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage