 # Python program to add two Matrices

## Python program to add two Matrices

Aim : Program to compute the sum of two matrices and then print it in Python.
Examples:

```Input :
X= [[1,2,3],
[4 ,5,6],
[7 ,8,9]]

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

Output :
result= [[10,10,10],
[10,10,10],
[10,10,10]]```

We can perform matrix addition in following ways in Python.

1. Using for loop:
 `# Program to add two matrices using nested loop` `X ``=` `[[``1``,``2``,``3``],` `    ``[``4` `,``5``,``6``],` `    ``[``7` `,``8``,``9``]]` `Y ``=` `[[``9``,``8``,``7``],` `    ``[``6``,``5``,``4``],` `    ``[``3``,``2``,``1``]]` `result ``=` `[[``0``,``0``,``0``],` `        ``[``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[i][j] ``=` `X[i][j] ``+` `Y[i][j]` `for` `r ``in` `result:` `    ``print``(r)`

Output:

```[10, 10, 10]
[10, 10, 10]
[10, 10, 10]```

Time Complexity: O(len(X) * len(X))

Auxiliary Space: O(len(X) * len(X))

Another Approach:

1. Explanation :-
In this program we have used nested for loops to iterate through each row and each column. At each point we add the corresponding elements in the two matrices and store it in the result.
2. Using nested list comprehension : In Python, we can implement a matrix as nested list (list inside a list). We can treat each element as a row of the matrix.
 `# Program to add two matrices` `# using list comprehension` ` ` `X ``=` `[[``1``,``2``,``3``],` `    ``[``4` `,``5``,``6``],` `    ``[``7` `,``8``,``9``]]` ` ` `Y ``=` `[[``9``,``8``,``7``],` `    ``[``6``,``5``,``4``],` `    ``[``3``,``2``,``1``]]` `result ``=` `[[X[i][j] ``+` `Y[i][j]  ``for` `j ``in` `range` `(``len``(X[``0``]))] ``for` `i ``in` `range``(``len``(X))]` ` ` `for` `r ``in` `result:` `    ``print``(r)`

Output:

```[10, 10, 10]
[10, 10, 10]
[10, 10, 10]```

Another Approach:

1. Explanation :-
The output of this program is the same as above. We have used nested list comprehension to iterate through each element in the matrix. List comprehension allows us to write concise codes and we must try to use them frequently in Python. They are very helpful.
2. Using zip() and sum
 `# Program to add two matrices` `# using zip()` ` ` `X ``=` `[[``1``,``2``,``3``],` `    ``[``4` `,``5``,``6``],` `    ``[``7` `,``8``,``9``]]` ` ` `Y ``=` `[[``9``,``8``,``7``],` `    ``[``6``,``5``,``4``],` `    ``[``3``,``2``,``1``]]` `result ``=` `[``map``(``sum``, ``zip``(``*``t)) ``for` `t ``in` `zip``(X, Y)]` ` ` `print``(result)`

Output:

`[[10, 10, 10], [10, 10, 10], [10, 10, 10]]`

Explanation :-
The zip function accepts iterator i of each element(list) of matrix, mapping them, adding them using sum() and storing them in the map form.

Last Updated on November 13, 2021 by admin

## Python – Initialize empty array of given lengthPython – Initialize empty array of given length

Python – Initialize empty array of given length As we know Array is a collection of items stored at contiguous memory locations. In Python, List (Dynamic Array) can be treated as Array. In this article, we will learn how to initialize an empty array

## Select Rows & Columns by Name or Index in Pandas DataFrame using [ ], loc & ilocSelect Rows & Columns by Name or Index in Pandas DataFrame using [ ], loc & iloc

Select Rows & Columns by Name or Index in Pandas DataFrame using [ ], loc & iloc Indexing in Pandas means selecting rows and columns of data from a Dataframe. It can be selecting all the rows and the particular

## Python – shutil.move() methodPython – shutil.move() method

Python | shutil.move() method Shutil module in Python provides many functions of high-level operations on files and collections of files. It comes under Python’s standard utility modules. This module helps in automating the process of copying and removal of files and

## Python program to print EmojisPython program to print Emojis

Python program to print Emojis There are multiple ways we can print the Emojis in Python. Let’s see how to print Emojis with Uniocdes, CLDR names and emoji module. Using Unicodes: Every emoji has a Unicode associated with it. Emojis also have

## Plotting Histogram in Python using MatplotlibPlotting Histogram in Python using Matplotlib

Plotting Histogram in Python using Matplotlib A histogram is basically used to represent data provided in a form of some groups.It is accurate method for the graphical representation of numerical data distribution.It is a type of bar plot where X-axis

## Logging in PythonLogging in Python

Logging in Python Logging is a means of tracking events that happen when some software runs. Logging is important for software developing, debugging and running. If you don’t have any logging record and your program crashes, there are very little

## Python String splitlines() MethodPython String splitlines() Method

Python String splitlines() Method Python String splitlines() method is used to split the lines at line boundaries. The function returns a list of lines in the string, including the line break(optional). Syntax: string.splitlines([keepends]) Parameters: keepends (optional): When set to True line breaks are included in the

## Python | Pandas Dataframe.sort_values()Python | Pandas Dataframe.sort_values()

Pandas Dataframe.sort_values()   Pandas sort_values() function sorts a data frame in Ascending or Descending order of passed Column. It’s different than the sorted Python function since it cannot sort a data frame and particular column cannot be selected. Let’s discuss