- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Python Program to Interchange Elements of First and Last in a Matrix Across Columns
A matrix is a two-dimensional array of many numbers arranged in rows and columns form. Python does not have any data type to represent a matrix, but we can use a nested list or NumPy array as a matrix.
See the below input output scenarios to understand how to interchange the first and last column elements of a matrix.
Input Output Scenarios
Assume we have a 3X3 matrix represented using a list of lists. And output matrix will be the resultant matrix whose first and last column elements are interchanged.
Input matrix: [1, 3, 4] [4, 5, 6] [7, 8, 3] Output matrix: [4, 3, 1] [4, 5, 6] [3, 8, 7]
Let’s consider another matrix whose rows and columns are unequal.
Input matrix: ['a', 'b'] ['c', 'd', 'e'] ['f', 'g', 'h', 'i'] Output matrix: ['b', 'a'] ['e', 'd', 'c'] ['i', 'g', 'h', 'f']
Let's see the different ways to interchange elements of first and last in a matrix across columns.
Swapping the Columns
We can simply interchange the elements of the first and last in a matrix across columns, by swapping the first and last column elements of the matrix.
Example
Create a matrix using a list of lists so that we can apply the list indexing techniques to swap the elements.
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))
Output
Original matrix: [1, 2, 3] [4, 5, 6] [7, 8, 9] Changed matrix: [3, 2, 1] [6, 5, 4] [9, 8, 7]
The given matrix is a square matrix and we have successfully interchanged the first and last elements of the given matrix across columns, which is done by using the python positive and negative indexing.
Example
In this example we wiil interchange the column elements of a non-square matrix.
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))
Output
Original matrix: ['a', 'b'] ['c', 'd', 'e'] ['f', 'g', 'h', 'i'] Changed matrix: ['b', 'a'] ['e', 'd', 'c'] ['i', 'g', 'h', 'f']
The matrix rows are iterated using a for loop and the column elements are swapped using the indexes.
Using List Manipulating Methods
In python pop(), insert(), and append() are list manipulating methods. And the matrix is created by using the list of lists so that we can use these list manipulation methods to interchange the first and last elements of the matrix across the columns.
pop() − The pop method removes the element at the specified position. By default, it removes the last element.
Syntax
list_obj.pop(index)
insert() − This method can be used to insert an element at any desired position. This method takes two arguments, one is the element and the index at which the element has to be inserted.
Syntax
list_obj.insert(index, element)
append() − method is used to add an element at the end of the list.
Syntax
list_obj.append(item)
Example
Let’s take an example and apply the pop(), insert(), and append() methods.
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)
Output
Original matrix: [1, 3] [4, 5, 6] [7, 8, 3, 9] Changed matrix: [3, 1] [6, 5, 4] [9, 8, 3, 7]
Using the temporary variables and list manipulating methods we have successfully interchanged the columns elements.