Generating random number list in Python

05 Sep, 2021
Sometimes, in making programs for gaming or gambling, we come across the task of creating the list all with random numbers. This task is to perform in general using loop and appending the random numbers one by one. But there is always a requirement to perform this in most concise manner. Let’s discuss certain ways in which this can be done.
The naive method to perform this particular task can be shortened using the list comprehension. randrange function is used to perform the task of generating the random numbers.  
Python3
# Python3 code to demonstrate# to generate random number list# using list comprehension + randrange()import random # using list comprehension + randrange()# to generate random number listres = [random.randrange(1, 50, 1) for i in range(7)] # printing resultprint ("Random number list is : " +  str(res))
Random number list is : [30, 48, 14, 33, 1, 4, 18]

This single utility function performs the exact required as asked by the problem statement, it generated N no. of random numbers in a list in the specified range and returns the required list. 
Python3
# Python3 code to demonstrate# to generate random number list# using random.sample()import random # using random.sample()# to generate random number listres = random.sample(range(1, 50), 7) # printing resultprint ("Random number list is : " +  str(res))
Random number list is : [21, 1, 14, 22, 6, 39, 7]

The random function provided by the numpy module can be more useful for you as it provides little better functionality and performance as compare to the random module.
This function returns random integers from the “discrete uniform” distribution of the integer data type.
Python3
# importing numpy moduleimport numpy as np # print the list of 10 integers from 3  to 7print(list(np.random.randint(low = 3,high=8,size=10))) # print the list of 5 integers from 0 to 2# if high parameter is not passed during# function call then results are from [0, low)print(list(np.random.randint(low = 3,size=5)))
Output: 
[5, 3, 6, 7, 4, 5, 7, 7, 7, 7]
[0, 2, 1, 2, 1]
This function return random float values in half open interval [0.0, 1.0).
Python3
import numpy as np # generates list of 4 float valuesprint(np.random.random_sample(size = 4)) # generates 2d list of 4*4print(np.random.random_sample(size = (4,4)))
output:
[0.08035145 0.94966245 0.92860366 0.22102797]
[[0.02937499 0.50073572 0.58278742 0.02577903]
 [0.37892104 0.60267882 0.33774815 0.28425059]
 [0.57086088 0.07445422 0.86236614 0.33505317]
 [0.83514508 0.82818536 0.1917555  0.76293027]]
The benefit of using numpy.random over the random module of python is that it provides few extra probability distributions which can help in scientific research.
By using random.randint() we can add random numbers into a list.
Python3
import random rand_list=[]n=10for i in range(n):    rand_list.append(random.randint(3,9))print(rand_list)
[8, 8, 8, 9, 5, 6, 5, 3, 7, 9]

UnworthyProgrammer
pulamolusaimohan
Python list-programs
Python
Python Programs
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Python Dictionary
Different ways to create Pandas Dataframe
Enumerate() in Python
Read a file line by line in Python
How to Install PIP on Windows ?
Python program to convert a list to string
Defaultdict in Python
Python | Get dictionary keys as a list
Python | Convert a list to dictionary
Python | Convert string dictionary to dictionary