w3resource

Python: Create an iteraor to get specified number of permutations of elements


10. Permutations Iterator

Write a Python program to create an iterator to get a specified number of permutations of elements.

Sample Solution:

Python Code:

import itertools as it
def permutations_data(iter, length):
    return it.permutations(iter, length)
#List
result = permutations_data(['A','B','C','D'], 3)
print("\nIterator to get specified number of permutations of elements:")
for i in result:
    print(i)

#String
result = permutations_data("Python", 2)
print("\nIterator to get specified number of permutations of elements:")
for i in result:
    print(i)

Sample Output:

Iterator to get specified number of permutations of elements:
('A', 'B', 'C')
('A', 'B', 'D')
('A', 'C', 'B')
('A', 'C', 'D')
('A', 'D', 'B')
('A', 'D', 'C')
('B', 'A', 'C')
('B', 'A', 'D')
('B', 'C', 'A')
('B', 'C', 'D')
('B', 'D', 'A')
('B', 'D', 'C')
('C', 'A', 'B')
('C', 'A', 'D')
('C', 'B', 'A')
('C', 'B', 'D')
('C', 'D', 'A')
('C', 'D', 'B')
('D', 'A', 'B')
('D', 'A', 'C')
('D', 'B', 'A')
('D', 'B', 'C')
('D', 'C', 'A')
('D', 'C', 'B')

Iterator to get specified number of permutations of elements:
('P', 'y')
('P', 't')
('P', 'h')
('P', 'o')
('P', 'n')
('y', 'P')
('y', 't')
('y', 'h')
('y', 'o')
('y', 'n')
('t', 'P')
('t', 'y')
('t', 'h')
('t', 'o')
('t', 'n')
('h', 'P')
('h', 'y')
('h', 't')
('h', 'o')
('h', 'n')
('o', 'P')
('o', 'y')
('o', 't')
('o', 'h')
('o', 'n')
('n', 'P')
('n', 'y')
('n', 't')
('n', 'h')
('n', 'o')

For more Practice: Solve these Related Problems:

  • Write a Python program to create an iterator that yields a specified number of unique permutations of elements from an iterable.
  • Write a Python program to generate an iterator over all permutations of a list and then filter out those that do not meet a given condition.
  • Write a Python program to build an iterator that returns only the first k permutations of a given iterable using itertools.permutations.
  • Write a Python program to construct an iterator that produces permutations and then maps a function to convert each permutation into a string.

Go to:


Previous: Write a Python program to split an iterable and generate iterables specified number of times.
Next: Write a Python program to generate combinations of a given length of given iterable.

Python Code Editor:


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

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.