Skip to content
Related Articles

Related Articles

random.shuffle() function in Python

View Discussion
Improve Article
Save Article
  • Difficulty Level : Easy
  • Last Updated : 16 Aug, 2022

The shuffle() is an inbuilt method of the random module. It is used to shuffle a sequence (list). Shuffling a list of objects means changing the position of the elements of the sequence using Python.

Syntax of random.shuffle() 

The order of the items in a sequence, such as a list, is rearranged using the shuffle() method. This function modifies the initial list rather than returning a new one.

Syntax: random.shuffle(sequence, function)

Parameters: 

  • sequence : can be a list 
  • function : optional and by default is random(). It should return a value between 0 and 1.

Returns: nothing 

Python random.shuffle() function to shuffle list

Example 1: 

Python3




# import the random module
import random
 
# declare a list
sample_list = ['A', 'B', 'C', 'D', 'E']
 
print("Original list : ")
print(sample_list)
 
# first shuffle
random.shuffle(sample_list)
print("\nAfter the first shuffle : ")
print(sample_list)
 
# second shuffle
random.shuffle(sample_list)
print("\nAfter the second shuffle : ")
print(sample_list)

Output : 

Original list : 
['A', 'B', 'C', 'D', 'E']

After the first shuffle : 
['A', 'B', 'E', 'C', 'D']

After the second shuffle : 
['C', 'E', 'B', 'D', 'A']

The shuffle() method cannot be used to shuffle immutable DataTypes like strings.

Example 2:

Python3




# import the random module
import random
 
# user defined function to shuffle
def sample_function():
    return 0.5
 
sample_list = ['A', 'B', 'C', 'D', 'E']
print("Original list : ")
print(sample_list)
 
# as sample_function returns the same value
# each time, the order of shuffle will be the
# same each time
random.shuffle(sample_list, sample_function)
print("\nAfter the first shuffle : ")
print(sample_list)
 
sample_list = ['A', 'B', 'C', 'D', 'E']
 
random.shuffle(sample_list, sample_function)
print("\nAfter the second shuffle : ")
print(sample_list)

Output : 

Original list : 
['A', 'B', 'C', 'D', 'E']

After the first shuffle : 
['A', 'D', 'B', 'E', 'C']

After the second shuffle : 
['A', 'D', 'B', 'E', 'C']

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!