w3resource

Python: Create the running product of an iterable


2. Running Product Iterator

Write a Python program that generates the running product of elements in an iterable.

Sample Solution:

Python Code:

from itertools import accumulate
import operator
def running_product(it):
    return accumulate(it,operator.mul)

#List
result = running_product([1,2,3,4,5,6,7])
print("Running product of a list:")
for i in result:
    print(i)

#Tuple
result = running_product((1,2,3,4,5,6,7))
print("Running product of a Tuple:")
for i in result:
    print(i)

Sample Output:

Type of the new iterator:
<class 'itertools.chain'>
Running product of a list:
1
2
6
24
120
720
5040
Running product of a Tuple:
1
2
6
24
120
720
5040

For more Practice: Solve these Related Problems:

  • Write a Python program to compute the running product of elements in an iterable, resetting the product each time a zero is encountered.
  • Write a Python program to generate a running product iterator over a list and then apply a logarithm function to each cumulative product using map.
  • Write a Python program to create an iterator that yields the running product and stops when the product exceeds a specified threshold.
  • Write a Python program to compute the running product of only the positive numbers in an iterable using itertools.accumulate and filter out negatives.

Python Code Editor:


Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Python program to create an iterator from several iterables in a sequence and display the type and elements of the new iterator.
Next: Write a Python program to generate the running maximum, minimum value of the elements of an iterable.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.