w3resource

Python: Permutations of specified elements, drawn from specified values


14. Specified Element Permutations

Write a Python program to generate permutations of specified elements drawn from specified values.

Sample Solution:

Python Code:

from itertools import product 

def permutations_colors(inp, n):
    for x in product(inp, repeat=n):
        c = ''.join(x)
        print(c,end=', ')

str1 = "Red"
print("Original String: ",str1)
print("Permutations of specified elements, drawn from specified values:")
n=1
print("\nn = 1")
permutations_colors(str1,n)
n=2
print("\nn = 2")
permutations_colors(str1,n)
n=3
print("\nn = 3")
permutations_colors(str1,n)

lst1 = ["Red","Green","Black"]
print("\n\nOriginal list: ",lst1)
print("Permutations of specified elements, drawn from specified values:")
n=1
print("\nn = 1")
permutations_colors(lst1,n)
n=2
print("\nn = 2")
permutations_colors(lst1,n)
n=3
print("\nn = 3")
permutations_colors(lst1,n)

Sample Output:

Original String:  Red
Permutations of specified elements, drawn from specified values:

n = 1
R, e, d, 
n = 2
RR, Re, Rd, eR, ee, ed, dR, de, dd, 
n = 3
RRR, RRe, RRd, ReR, Ree, Red, RdR, Rde, Rdd, eRR, eRe, eRd, eeR, eee, eed, edR, ede, edd, dRR, dRe, dRd, deR, dee, ded, ddR, dde, ddd, 

Original list:  ['Red', 'Green', 'Black']
Permutations of specified elements, drawn from specified values:

n = 1
Red, Green, Black, 
n = 2
RedRed, RedGreen, RedBlack, GreenRed, GreenGreen, GreenBlack, BlackRed, BlackGreen, BlackBlack, 
n = 3
RedRedRed, RedRedGreen, RedRedBlack, RedGreenRed, RedGreenGreen, RedGreenBlack, RedBlackRed, RedBlackGreen, RedBlackBlack, GreenRedRed, GreenRedGreen, GreenRedBlack, GreenGreenRed, GreenGreenGreen, GreenGreenBlack, GreenBlackRed, GreenBlackGreen, GreenBlackBlack, BlackRedRed, BlackRedGreen, BlackRedBlack, BlackGreenRed, BlackGreenGreen, BlackGreenBlack, BlackBlackRed, BlackBlackGreen, BlackBlackBlack, 

For more Practice: Solve these Related Problems:

  • Write a Python program to generate permutations of a specified subset of elements drawn from a given list using itertools.permutations.
  • Write a Python program to create an iterator that produces permutations of selected elements and then filters out those that are not in lexicographical order.
  • Write a Python program to generate all permutations of specified elements and then map a function that converts each permutation into a dash-separated string.
  • Write a Python program to generate permutations for a given set of elements and then reverse each permutation using a custom lambda.

Go to:


Previous: Write a Python program to chose specified number of colours from three different colours and generate all the combinations with repetitions.
Next: Write a Python program to generate all possible permutations of n different objects.

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.