Table of Contents
In this example, you will learn to compute all the permutation of the string.
To understand this example, you should have the knowledge of the following Python programming topics:
Permutation is the method of selecting elements from a set in different ways.
For example: the number of ways in which characters from yup can be selected are yup, ypu, uyp, upy, puy, pyu, and not selecting any.
We will perform the same in the following examples.
1. Example 1: Using recursion
def get_permutation(string, i=0):
if i == len(string):
print("".join(string))
for j in range(i, len(string)):
words =
# swap
words[i], words[j] = words[j], words[i]
get_permutation(words, i + 1)
print(get_permutation('yup'))
Output
yup ypu uyp upy puy pyu None
In this example, recursion is used to find the permutations of a string yup.
- The if condition prints
stringpassed as argument if it is equal to the length ofyub. - In each iteration of the for loop, each character of
yupis stored inwords. - The elements of words are swapped. In this way, we achieve all different combinations of characters.
- This process continues until the maximum length is reached.
2. Example 2: Using itertools
from itertools import permutations
words = [''.join(p) for p in permutations('pro')]
print(words)
Output
['pro', 'por', 'rpo', 'rop', 'opr', 'orp']
Using permutations from itertools module, we can find the permutations of a string.
Related posts:
Python Set issuperset()
Python Program to Convert Two Lists Into a Dictionary
Python Dictionary popitem()
Python Data Structures and Algorithms - Benjamin Baka
Case-Insensitive String Matching in Java
Python List extend()
Deep Learning with Python - A Hands-on Introduction - Nikhil Ketkar
Python Program to Shuffle Deck of Cards
Python Tuple index()
JavaScript Methods of RegExp and String
Python enumerate()
Java String to InputStream
Python Program to Convert Bytes to a String
Python Program to Find the Largest Among Three Numbers
JavaScript Eval: run a code string
Python repr()
Python List sort()
Python Set isdisjoint()
Python hex()
Python Set difference_update()
Python List remove()
Python Exception Handling Using try, except and finally statement
Python @property decorator
Python String count()
Python bytearray()
Python Program to Get a Substring of a String
Python any()
Python Set add()
Python id()
Python Errors and Built-in Exceptions
Python Program to Merge Mails
Python Dictionary