Maison >développement back-end >Tutoriel Python >Programme Python : échangez les positions du premier et du dernier élément dans une matrice entre les colonnes
Une matrice est un tableau bidimensionnel composé de nombreux nombres disposés en lignes et en colonnes. Python n'a aucun type de données pour représenter les matrices, mais nous pouvons utiliser des listes imbriquées ou des tableaux NumPy comme matrices.
Consultez les scénarios d'entrée et de sortie suivants pour savoir comment échanger les premier et dernier éléments de colonne d'une matrice.
Supposons que nous ayons une matrice 3X3 représentée à l'aide d'une liste de listes. La matrice de sortie sera la matrice résultante de l’échange des premier et dernier éléments de colonne.
Input matrix: [1, 3, 4] [4, 5, 6] [7, 8, 3] Output matrix: [4, 3, 1] [4, 5, 6] [3, 8, 7]
Considérons une autre matrice où les lignes et les colonnes ne sont pas égales.
Input matrix: ['a', 'b'] ['c', 'd', 'e'] ['f', 'g', 'h', 'i'] Output matrix: ['b', 'a'] ['e', 'd', 'c'] ['i', 'g', 'h', 'f']
Examinons différentes manières d'échanger le premier et le dernier élément d'une matrice sur plusieurs colonnes.
Nous pouvons simplement échanger les premier et dernier éléments de la matrice entre les colonnes en échangeant les premier et dernier éléments de colonne de la matrice.
Créez une matrice en utilisant une liste de listes afin que nous puissions appliquer des techniques d'indexation de liste pour échanger des éléments.
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))
Original matrix: [1, 2, 3] [4, 5, 6] [7, 8, 9] Changed matrix: [3, 2, 1] [6, 5, 4] [9, 8, 7]
La matrice donnée est une matrice carrée et nous avons réussi à échanger le premier et le dernier élément de la matrice donnée entre les colonnes, cela se fait en utilisant l'indexation positive et négative Python.
Dans cet exemple, nous échangerons les éléments de colonne d'une matrice non carrée.
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))
Original matrix: ['a', 'b'] ['c', 'd', 'e'] ['f', 'g', 'h', 'i'] Changed matrix: ['b', 'a'] ['e', 'd', 'c'] ['i', 'g', 'h', 'f']
Utilisez une boucle for pour parcourir les lignes de la matrice et échanger les éléments de colonne à l'aide de l'index.
En Python, pop(), insert() et append() sont des méthodes d'opération de liste. Et la matrice est créée à l'aide d'une liste de listes afin que nous puissions échanger les premier et dernier éléments de la matrice entre les colonnes en utilisant ces méthodes de manipulation de liste.
pop() - La méthode pop supprime l'élément à la position spécifiée. Par défaut, il supprime le dernier élément.
list_obj.pop(index)
insert() - Cette méthode peut être utilisée pour insérer un élément à n'importe quelle position souhaitée. Cette méthode accepte deux paramètres, un élément et l'index auquel l'élément doit être inséré.
list_obj.insert(index, element)
append() - La méthode est utilisée pour ajouter un élément à la fin de la liste.
list_obj.append(item)
Prenons un exemple et appliquons les méthodes pop(), insert() et append().
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)
Original matrix: [1, 3] [4, 5, 6] [7, 8, 3, 9] Changed matrix: [3, 1] [6, 5, 4] [9, 8, 3, 7]
À l'aide de variables temporaires et de méthodes de manipulation de liste, nous avons réussi à échanger les éléments de colonne.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!