numpy.multiply() in Python (original) (raw)

Last Updated : 17 Apr, 2025

The numpy.multiply() is a numpy function in Python which is used to find element-wise multiplication of two arrays or scalar (single value). It returns the product of two input array element by element.

**Syntax:

numpy.multiply(arr1, arr2, out=None, where=True, casting=’same_kind’, order=’K’, dtype=None, subok=True)

**Parameters:

**Return: ndarray (Element-wise product of arr1 and arr2).

Example 1: Multiplying a Scalar with a scalar

import numpy as geek in_num1 = 4 in_num2 = 6 print ("1st Input number : ", in_num1) print ("2nd Input number : ", in_num2) out_num = geek.multiply(in_num1, in_num2) print ("output number : ", out_num)

`

**Output:

multiply-ex1

Multiplying a Scalar with a scalar

**Example 2: Multiplying a Scalar with an Array

When one of the inputs is a scalar it is multiplied with each element of the array. This operation is commonly used for scaling or adjusting values in an array. Here Scalar value 5 is multiplied with each element 1,2,3.

Python `

import numpy as geek in_arr = geek.array([1, 2, 3]) scalar_value = 5

result_arr = geek.multiply(in_arr, scalar_value) print(result_arr)

`

**Output:

[ 5 10 15]

**Example 3: Element-wise Multiplication of Arrays

When both inputs are arrays of the same shape numpy.multiply() multiplies corresponding elements together. This operation is performed element by element.

Python `

import numpy as geek in_arr1 = geek.array([[2, -7, 5], [-6, 2, 0]]) in_arr2 = geek.array([[0, -7, 8], [5, -2, 9]]) print ("1st Input array : ", in_arr1) print ("2nd Input array : ", in_arr2) out_arr = geek.multiply(in_arr1, in_arr2) print ("Resultant output array: ", out_arr)

`

**Output

multiple-ex-3

Multiplying a Scalar with an Array

In above example corresponding elements from in_arr1 and in_arr2 are multiplied:

**Example 4: Multiplying Arrays with Different Shapes (Broadcasting)

numpy.multiply() supports broadcasting which means it can multiply arrays with different shapes as long as they are compatible for broadcasting rules.

Python `

import numpy as geek in_arr1 = geek.array([1, 2, 3]) in_arr2 = geek.array([[4], [5], [6]])

result_arr = geek.multiply(in_arr1, in_arr2) print(result_arr)

`

**Output:

multiply-ex-4

Arrays with Different Shapes

In this example in_arr1 is broadcasted to match the shape of in_arr2 for element-wise multiplication.

**To understand broadcasting you can refer to this article: NumPy Array Broadcasting

**Example 5: Using out Parameter

We can specify an output array where result of the multiplication will be stored. This avoids creating a new array and can help save memory when working with large datasets.

Python `

import numpy as geek in_arr1 = geek.array([1, 2, 3]) in_arr2 = geek.array([4, 5, 6]) output_arr = geek.empty_like(in_arr1) geek.multiply(in_arr1, in_arr2, out=output_arr) print(output_arr)

`

**Output:

[ 4 10 18]

Result of element-wise multiplication is stored in output_arr instead of creating a new array. By mastering numpy.multiply() we can efficiently handle element-wise multiplication across arrays and scalars.