# Randomly select n elements from list in Python

In this article, we will discuss how to randomly select n elements from the list in Python. Before moving on to the approaches let’s discuss Random Module which we are going to use in our approaches.

A random module returns random values. It is useful when we want to generate random values. Some of the methods of Random module are:- seed(), getstate(), choice(), sample() etc.

## Select randomly n elements from a list using randrange()

Here, we are using the random randrange() function to return a single random number from a list.

## Python3

 `import` `random`   `list` `=` `[``1``, ``2``, ``3``, ``4``]` `get_index ``=` `random.randrange(``len``(letters))`   `print``(letters[get_index])`

Output:

`3`

Time Complexity: O(n) where n is the number of elements in the list
Auxiliary Space: O(1), here constant extra space is required

## Selecting more than one random element from a list using sample()

The sample() method is used to return the required list of items from a given sequence. This method does not allow duplicate elements in a sequence.

## python3

 `# importing random module` `import` `random`   `# declaring list` `list` `=` `[``2``, ``2``, ``4``, ``6``, ``6``, ``8``]`   `# initializing the value of n` `n ``=` `4`   `# printing n elements from list` `print``(random.sample(``list``, n))`

Output:

`[8, 6, 6, 4]`

## Selecting more than one random element from a list using choices()

Here, we are using the random choices() function to return more than one random number from a list.

## Python3

 `# importing random module` `import` `random`   `# declaring list` `list` `=` `[``'a'``, ``'b'``, ``'c'``, ``'d'``, ``'e'``, ``'f'``]`   `# initializing the value of n` `n ``=` `4`   `# printing n elements from list` `print``(random.choices(``list``, k``=``n))`

Output:

`['d', 'd', 'f', 'a']`

## Select randomly n elements from a list using choice()

The choice() method is used to return a random number from given sequence. The sequence can be a list or a tuple. This returns a single value from available data that considers duplicate values in the sequence(list).

## python3

 `# importing random module` `import` `random`   `# declaring list` `list` `=` `[``2``, ``2``, ``4``, ``6``, ``6``, ``8``]`   `# initializing the value of n` `n ``=` `4`   `# traversing and printing random elements` `for` `i ``in` `range``(n):` `    `  `    ``# end = " " so that we get output in single line` `    ``print``(random.choice(``list``), end ``=` `" "``)`

Output :

`8 2 4 6 `

RECOMMENDED ARTICLES – Randomly select elements from list without repetition in Python

Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out - check it out now!

Previous
Next