Python Program To Multiply all numbers in the list

Here are 7 ways to multiply all numbers in the Python list:

  1. Using Traversal
  2. Using numpy.prod()
  3. Using lambda and reduce() function
  4. Using math.prod()
  5. Using reduce() and mul() function
  6. Using itertools.accumulate()
  7. Using a Recursive Function

Method 1: Using Traversal

First, define a function and initialize the product value to 1. This function multiplies all elements of the list by traversing it with a for loop.

Example

def product_of_list(num_list):

 product = 1 # Initialize product to 1

 # Iterate through each number in the list and multiply it to the product
 for x in num_list:
 product *= x       # Multiply product by the current number
 return product     # Return the final product


my_list = [1, 3, 5, 7]
print(product_of_list(my_list))

Output

105

Method 2: Using numpy.prod()

The numpy.prod() function takes an iterable (like a list) and calculates the product of all its elements.

Visual Representation

Visual Representation of Using numpy.prod()

Example

import numpy as np

my_list = [1, 3, 5, 7]

final_result = np.prod(my_list)

print(final_result)

Output

105

Method 3 Using lambda and reduce() function

The reduce() function takes two arguments: a lambda function that multiplies two values, and a list. It then applies this lambda function cumulatively from the first to the last element of the list to compute the product of all elements.

Visual Representation

Visual Representation of Using lambda and reduce() function

Example

from functools import reduce

my_list = [1, 3, 5, 7]

# Using functools.reduce with a lambda function
final_result = reduce((lambda x, y: x * y), my_list)

print(final_result)

Output

105

Method 4: Using math.prod()

The math.prod() function, introduced in Python 3.8 takes an iterable (such as a list) and returns the product of all its elements.

Visual RepresentationVisual Representation of Using math.prod()

Example

import math

my_list = [1, 3, 5, 7]

final_result = math.prod(my_list)

print(final_result)

Output

105

Method 5: Using reduce() and mul() function

The reduce() function cumulatively applies the mul() function to the items of a list, thereby reducing the list to a single value.

Visual Representation

Visual Representation of Using reduce() and mul() function

Example

from functools import reduce
from operator import mul

my_list = [1, 3, 5, 7]

final_result = reduce(mul, my_list)

print(final_result)

Output

105

Method 6: Using itertools.accumulate()

The itertools.accumulate() takes a list and applies a function cumulatively to its items. It returns an iterator. Then, we convert it to a list and take the last element to get the final product.

Example

from itertools import accumulate

my_list = [1, 3, 5, 7]

# Calculate cumulative product of the list elements
final_result = list(accumulate(my_list, lambda x, y: x * y))

print(final_result[-1])

Output

105

Method 7: Using a Recursive Function

The recursive function multiplies all numbers in a list by repeatedly calling itself. It multiplies the first element of the list with the product of the rest of the list, reducing the problem size with each recursive call.

Example

def product_of_list(num_list):
 # Base case: if list has one element, return that element
 if len(num_list) == 1:
 return num_list[0]
 else:
 # Recursive case: multiply first element with product of the rest of the list
 return num_list[0] * product_of_list(num_list[1:])


my_list = [1, 3, 5, 7]
print(product_of_list(my_list))

Output

105

See also

Python list count

Python list contains

Python list reverse

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.