Adding and Subtracting Matrices in Python (original) (raw)

Last Updated : 22 Sep, 2025

In this article, we will learn how to add and subtract matrices in Python using both NumPy (fast and simple) and nested loops (manual approach).

**For Example:

Suppose we have two matrices A and B.
A = [[1,2],[3,4]]
B = [[4,5],[6,7]]

then we get
A+B = [[5,7],[9,11]] #Addition
A-B = [[-3,-3],[-3,-3]] #Subraction

Adding Matrices

NumPy provides the np.add() function, which adds two matrices element-wise.

Python `

import numpy as np A = np.array([[1, 2], [3, 4]]) B = np.array([[4, 5], [6, 7]])

print("Matrix A:\n", A) print("Matrix B:\n", B)

Adding matrices

C = np.add(A, B) print("Result:\n", C)

`

Output

Matrix A: [[1 2] [3 4]] Matrix B: [[4 5] [6 7]] Result: [[ 5 7] [ 9 11]]

**Explanation: np.add(A, B) adds corresponding elements of matrices A and B and result is a new matrix C with element-wise sums.

Subtracting Matrices

NumPy also provides np.subtract(), which subtracts one matrix from another element-wise.

Python `

import numpy as np A = np.array([[1, 2], [3, 4]]) B = np.array([[4, 5], [6, 7]])

print("Matrix A:\n", A) print("Matrix B:\n", B)

Subtracting matrices

C = np.subtract(A, B) print("Result:\n", C)

`

Output

Matrix A: [[1 2] [3 4]] Matrix B: [[4 5] [6 7]] Result: [[-3 -3] [-3 -3]]

**Explanation: np.subtract(A, B) subtracts each element of B from A and result is a matrix with the element-wise differences.

Adding and Subtracting Matrices using Nested Loops

This manual approach uses nested loops to perform both addition and subtraction of two matrices without using NumPy.

Python `

matrix1 = [[1, 2], [3, 4]] matrix2 = [[4, 5], [6, 7]]

print("Matrix 1:") for row in matrix1: print(row)

print("Matrix 2:") for row in matrix2: print(row)

add_result = [[0, 0], [0, 0]] sub_result = [[0, 0], [0, 0]]

Perform addition and subtraction

for i in range(len(matrix1)): for j in range(len(matrix1[0])): add_result[i][j] = matrix1[i][j] + matrix2[i][j] sub_result[i][j] = matrix1[i][j] - matrix2[i][j]

print("Addition Result:") for row in add_result: print(row)

print("Subtraction Result:") for row in sub_result: print(row)

`

Output

Matrix 1: [1, 2] [3, 4] Matrix 2: [4, 5] [6, 7] Addition Result: [5, 7] [9, 11] Subtraction Result: [-3, -3] [-3, -3]

**Explanation: We iterate over rows (i) and columns (j) using nested loops. At each index [i][j], we calculate both: