Skip to content
Related Articles

Related Articles

Python | Permutation of a given string using inbuilt function

Improve Article
Save Article
Like Article
  • Difficulty Level : Easy
  • Last Updated : 03 Aug, 2020

A permutation, also called an “arrangement number” or “order”, is a rearrangement of the elements of an ordered list S into a one-to-one correspondence with S itself. A string of length n has n! permutation.

Examples:

Input :  str = 'ABC'
Output : ABC 
         ACB 
         BAC 
         BCA 
         CAB 
         CBA

We have existing solution for this problem please refer Permutations of a given string using STL link. We can also solve this problem in python using inbuilt function permutations(iterable).




# Function to find permutations of a given string
from itertools import permutations
  
def allPermutations(str):
       
     # Get all permutations of string 'ABC'
     permList = permutations(str)
  
     # print all permutations
     for perm in list(permList):
         print (''.join(perm))
        
# Driver program
if __name__ == "__main__":
    str = 'ABC'
    allPermutations(str)
Output:
ABC
ACB
BAC
BCA
CAB
CBA

Permutation and Combination in Python

Permutations of a given string with repeating characters
The idea is to use dictionary to avoid printing duplicates.




from itertools import permutations
import string
  
s = "GEEK"
a = string.ascii_letters
p = permutations(s)
  
# Create a dictionary
d = []
for i in list(p):
  
    # Print only if not in dictionary
    if (i not in d):
        d.append(i)
        print(''.join(i))
Output:
GEEK
GEKE
GKEE
EGEK
EGKE
EEGK
EEKG
EKGE
EKEG
KGEE
KEGE
KEEG

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!