How to multiply all numbers in the Python list? You can use the multiplication operator (*) is indeed used for multiplying two numbers together. It can be used with numbers of any type, including integers, floating-point numbers, and complex numbers. You can multiply all numbers in the list using many ways, for example, by using the traversal
, numpy.prod()
, math.prod()
, lambda & reduce(), mul()
, traversal by index, reduce() & mul(), itertools.accumulate
, and recursive
functions. In this article, I will explain how to multiply all numbers in the list by using all these methods with examples.
1. Quick Examples of Multiplying all Numbers in the List
If you are in a hurry, below are some quick examples of multiplying all numbers in the list.
# Quick examples of multiply all numbers in the list
# Initialize the list
mylist = [2, 3, 4, 5]
# Example 1: Multiply all elements in a list
# Using the traversal
def multiply_list_numbers(mylist):
result = 1
for x in mylist:
result = result * x
return result
result = multiply_list_numbers(mylist)
# Example 2: Multiply all elements in the list
# Using numpy.prod()
result = np.prod(mylist)
# Example 3: Multiply all elements in the list
# Using math.prod
mylist = [2, 3, 4, 5]
result = math.prod(mylist)
# Example 4: Using lambda & reduce() function
result = reduce((lambda x, y: x * y), mylist)
# Example 5: Multiply all elements in the list
# Using mul() function of operator module
result = 1
for i in mylist:
result = mul(i, result)
# Example 6: Using traversal by index
def multiplyList(mylist):
result = 1
for i in range(0,len(mylist)):
result = result * mylist[i]
return result
result = multiplyList(mylist)
# Example 7: Using itertools.accumulate
result = list(accumulate(mylist, (lambda x, y: x * y)))
# Example 8: Using reduce() and the mul() function
result = reduce(mul, mylist)
# Example 9: Using the recursive function
def product_recursive(numbers):
if not numbers:
return 1
return numbers[0] * product_recursive(numbers[1:])
result = product_recursive(mylist)
2. Multiply all Elements in a List Using Traversal
To perform multiplication over the list of elements use traversal
. You can use a simple loop to iterate over the list and multiply each element with an initial value. For example, to multiply all elements mylist
using the traversal you can initialize the result
variable to 1
and iterate over each element in mylist
, then multiply each element with the current value of the result
. Finally, it returns the result
. This means that 2*3*4*5
equals 120
, which is the expected result.
# Multiply all elements in a list
# Using traversal
def multiply_list_numbers(mylist):
result = 1
for x in mylist:
result = result * x
return result
# Initialize list
mylist = [2, 3, 4, 5]
result = multiply_list_numbers(mylist)
print("Multiplication of given list:", result)
Yields below output.

3. Multiply all Elements in the List Using numpy.prod()
To calculate multiplication over the elements in the mylist
using numpy.prod()
. This is a part of the NumPy module, a library of Python that is used to calculate scientific calculations. Before going to use any functions of numpy module we need to import numpy module. First, initialize the mylist
variable, and then use np.prod(mylist)
to calculate the product of all elements in the list.
This means that 2*3*4*5
equals 120
, which is the expected result. Using numpy.prod()
can be a convenient and efficient way to multiply all elements in a list.
import numpy as np
# Initialize the list
mylist = [2, 3, 4, 5]
# Multiply all elements in the list
# Using numpy.prod()
result = np.prod(mylist)
print("Multiplication of given list:", result)
Yields the same output as above.
4. Multiply all Elements in the List Using math.prod()
You can also use math.prod()
to multiply all elements in the mylist
. First, you can import the math module and initialize the mylist
variable, and then use math.prod(mylist)
to calculate the product of all elements in the list.
Note – the math.prod()
function is available in Python 3.8
or later versions and provides a convenient way to multiply all elements in a list.
import math
# Initialize list
mylist = [2, 3, 4, 5]
# Multiply all elements in the list
# Using math.prod
result = math.prod(mylist)
print("Multiplication of given list:", result)
Yields the same output as above.
5. Using Lambda & reduce() Function
You can also use the reduce() function that has been moved from the functools
module. So, you can use the reduce()
function directly without importing it from functools
. For example, the reduce()
function is used along with a lambda function to multiply all elements in the mylist
. The lambda
function takes two arguments x
and y
and performs the multiplication operation x * y
. The reduce()
function applies this lambda
function to pairs of elements in the list, reducing them to a single result.
from functools import reduce
# Initialize list
mylist = [2, 3, 4, 5]
# Using lambda & reduce() function
result = reduce((lambda x, y: x * y), mylist)
print("Multiplication of given list:", result)
Yields the same output as above.
6. Using mul() Function of Operator Module
Alternatively, you can use the mul()
function from the operator module to multiply all elements in the mylist
. First, initialize the mylist
variable and set the initial value of result
to 1
. And then iterate over each element in mylist
and use the mul()
function to multiply the current element with the current value of result
.
from operator import*
# Initialize list
mylist = [2, 3, 4, 5]
# Multiply all elements in list
# Using mul() function of operator module
result = 1
for i in mylist:
result = mul(i, result)
print("Multiplication of given list:", result)
Yields the same output as above.
7. Multiply all Elements in the List Using Traversal by Index
To multiply all elements in the mylist
use traversal by index. First, initialize the mylist variable, and set the initial value result
to 1
, and then use a for loop to iterate over the indices of the list. You can multiply each element at the index i
with the current value of result
and update the result variable. Using traversal by index allows you to access each element of the list using its index and perform the multiplication operation.
# Using traversal by index
def multiplyList(mylist):
result = 1
for i in range(0,len(mylist)):
result = result * mylist[i]
return result
# Initialize list
mylist = [2, 3, 4, 5]
result = multiplyList(mylist)
print("Multiplication of given list:", result)
Yields the same output as above.
8. Multiply all Elements in the List Using itertools.accumulate
To perform multiplication over all elements in the mylist
use itertools.accumulate()
. First, import the accumulate()
function from the itertools
module. This function takes the mylist
and lambda
function (lambda x, y: x * y)
as arguments. This lambda function performs the multiplication operation on two elements x
and y
.
The accumulate()
function returns an iterator that yields the accumulated results at each step. By converting the iterator to a list using list(), you can access the last element result[-1]
, which represents the final product.
from itertools import accumulate
# Initialize list
mylist = [2, 3, 4, 5]
# Multiply all elements in list
# Using itertools.accumulate
result = list(accumulate(mylist, (lambda x, y: x * y)))
print("After multiplying all elements in a list:", result[-1])
Yields the same output as above.
9. Using reduce() and the mul() Function
Similarly, you can use reduce() and the mul()
function from the operator module to multiply all elements mylist
. First import reduce()
from the functools
module and mul()
from the operator module. This reduce()
function takes the mul() function and the mylist
as arguments. The mul()
function performs the multiplication operation on two elements. Using reduce()
and the mul()
function provides an efficient way to multiply all elements in a list.
from functools import reduce
from operator import mul
# Initialize list
mylist = [2, 3, 4, 5]
# Using reduce() and the mul() function
result = reduce(mul, mylist)
print("After multiplying all elements in a list:", result)
Yields the same output as above.
10. Using the recursive Function
To multiply all elements in the mylist
use a recursive function product_recursive()
. The product_recursive()
function takes a list of numbers as input. It checks if the list is empty, and if so, it returns 1 as the base case for the recursion. If the list is not empty, it recursively calls product_recursive()
with the sublist starting from the second element, and multiplies it with the first element of the list.
# Multiply all elements in the list
# Using the recursive function
def product_recursive(numbers):
if not numbers:
return 1
return numbers[0] * product_recursive(numbers[1:])
# Initialize list
mylist = [2, 3, 4, 5]
result = product_recursive(mylist)
print("After multiplying all elements in a list:", result)
Yields the same output as above.
Conclusion
In this article, I have explained Python multiplies all numbers in the list by using traversal, numpy.prod()
, math.prod()
, lambda & reduce(), mul()
, traversal by index, itertools.accumulate
, reduce() & mul(), and recursive functions. Also, learned how to use the math module and NumPy module to calculate products with examples.
Happy Learning !!
Related Articles
- Python Insert List in Another List
- Python List of Tuples into Dictionary
- Python List Mutable
- Python List Multiply
- Python List Unpacking with Examples
- Python List Remove Last Element
- Python List Operations
- Python List to Integer
- Python List Contains – Check if Element Exists in List
- Python List Intersection
- Transform List using Python map()