w3resource

Python: Generate an infinite cycle of elements from an iterable

Python Itertools: Exercise-5 with Solution

Write a Python program to generate an infinite cycle of elements from an iterable.
Note: Iterable should be a list or a string or a dictionary, etc.

Sample Solution:

Python Code:

import itertools as it
def cycle_data(iter):
    return it.cycle(iter)
# Following  loops will run for ever    
#List
result = cycle_data(['A','B','C','D'])
print("The said function print never-ending items:")
for i in result:
    print(i)

#String
result = cycle_data('Python itertools')
print("The said function print never-ending items:")
for i in result:
    print(i)

Sample Output:

The said function print never-ending items:
A
B
C
D
A
B
C
D
A
B
C
D
A
B
C
D
A
B
....

Python Code Editor:

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

Previous: Write a Python program to construct an infinite iterator that returns evenly spaced values starting with a specified number and step.
Next: Write a Python program to make an iterator that drops elements from the iterable as soon as an element is a positive number.

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.

Python: Tips of the Day

Inverts a dictionary with non-unique hashable values:

Example:

def tips_collect_dictionary(obj):
  inv_obj = {}
  for key, value in obj.items():
    inv_obj.setdefault(value, list()).append(key)
  return inv_obj
ages = {
  "Owen": 25,
  "Jhon": 25,
  "Pepe": 15,
}
print(tips_collect_dictionary(ages))

Output:

{25: ['Owen', 'Jhon'], 15: ['Pepe']}

 





We are closing our Disqus commenting system for some maintenanace issues. You may write to us at reach[at]yahoo[dot]com or visit us at Facebook