# 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[0]))

Auxiliary Space: O(len(X) * len(X[0]))

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

## Pandas DataFrame reset_index() methodPandas DataFrame reset_index() method

Pandas DataFrame reset_index() Method with Exmaples Pandas reset_index() method is a powerful tool to reset

## Python – yield KeywordPython – yield Keyword

Python | yield Keyword YieldÂ is a keyword in Python that is used to return from

## How to Convert integer to string in PythonHow to Convert integer to string in Python

In Python an integer can be converted into a string using the built-in str() function.

## Python – Count number of items in a dictionary value that is a listPython – Count number of items in a dictionary value that is a list

Python | Count number of items in a dictionary value that is a list In

## Division Operators in PythonDivision Operators in Python

Division Operators in Python Consider the below statements in Python. # A Python program to

## Generate a graph using Dictionary in PythonGenerate a graph using Dictionary in Python

Generate a graph using Dictionary in Python In this article, we will see how to

## Iterate over characters of a string in PythonIterate over characters of a string in Python

Iterate over characters of a string in Python In Python, while operating with String, one

## Python ModulesPython Modules

Python Modules A Python module is a file containing Python definitions and statements. A module