Python define un conjunto de funciones utilizadas para generar o manipular números aleatorios a través de la módulo aleatorio.
Las funciones en el módulo aleatorio dependen de una función generadora de números pseudoaleatorios aleatorio(), que genera un número flotante aleatorio entre 0,0 y 1,0. Estos tipos particulares de funciones se utilizan en muchos juegos, loterías o cualquier aplicación que requiera la generación de números aleatorios.
Ejemplo de un número aleatorio en Python
Generando una lista de números aleatorios en Python usando random().
Python3
import random num = random.random() print (num) |
Producción:
0.30078080420602904
Diferentes formas de generar un número aleatorio en Python
Método 1: Generando una lista de números aleatorios en Python opción()
select() es una función integrada en el lenguaje de programación Python que devuelve un elemento aleatorio de una lista, tupla o cadena.
Python3
# Python3 program to demonstrate the use of # choice() method # import random import random # prints a random value from the list list1 = [ 1 , 2 , 3 , 4 , 5 , 6 ] print (random.choice(list1)) # prints a random item from the string string = "striver" print (random.choice(string)) |
Producción:
5 t
Método 2: generar una lista de números aleatorios en Python randrange (comienzo, final, grado)
El módulo aleatorio proporciona una función que puede generar números aleatorios a partir de un rango específico y también permite que el espacio incluya pasos, llamados estrofa ().
Python3
# Python code to demonstrate the working of # choice() and randrange() # importing "random" for random operations import random # using choice() to generate a random number from a # given list of numbers. print ( "A random number from list is : " , end = "") print (elección.aleatoria([ 1 , 4 , 8 , 10 , 3 ])) # using randrange() to generate in range from 20 # to 50. The last parameter 3 is step size to skip # three numbers when selecting. print ( "A random number from range is : " , end = "") print (random.randrange( 20 , 50 , 3 )) |
Producción:
A random number from list is : 4 A random number from range is : 41
Método 3: generar una lista de números aleatorios en Python usando semilla()
La función semilla se usa para guardar el estado de una función aleatoria para que pueda generar varios números aleatorios en múltiples ejecuciones del código en la misma máquina o en diferentes máquinas (para un valor inicial dado). El valor inicial es el número de valor anterior generado por el generador. Por primera vez cuando no hay un valor anterior, utiliza la hora actual del sistema.
Python3
# Python code to demonstrate the working of # random() and seed() # importing "random" for random operations import random # using random() to generate a random number # between 0 and 1 print ( "A random number between 0 and 1 is : " , end = "") print (random.random()) # using seed() to seed a random number random.seed( 5 ) # printing mapped random number print ( "The mapped random number with 5 is : " , end = "") print (random.random()) # using seed() to seed different random number random.seed( 7 ) # printing mapped random number print ( "The mapped random number with 7 is : " , end = "") print (random.random()) # using seed() to seed to 5 again random.seed( 5 ) # printing mapped random number print ( "The mapped random number with 5 is : " , end = "") print (random.random()) # using seed() to seed to 7 again random.seed( 7 ) # printing mapped random number print ( "The mapped random number with 7 is : " , end = "") print (random.random()) |
Producción:
A random number between 0 and 1 is : 0.510721762520941 The mapped random number with 5 is : 0.6229016948897019 The mapped random number with 7 is : 0.32383276483316237 The mapped random number with 5 is : 0.6229016948897019 The mapped random number with 7 is : 0.32383276483316237
Método 4: Genere una lista de números aleatorios en Python usando barajar()
Se utiliza para barajar una secuencia (lista). La perturbación significa cambiar la posición de los elementos de la secuencia. Aquí, la operación de barajado está en efecto.
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) |
Producción:
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']
Método 5: generar una lista de números aleatorios en Python usando uniforme()
Esta función se utiliza para un número aleatorio de punto flotante entre los números mencionado en sus argumentos. Toma dos argumentos, un límite inferior (incluido en la generación) y un límite superior (no incluido en la generación).
Python3
# Python code to demonstrate the working of # shuffle() and uniform() # importing "random" for random operations import random # Initializing list li = [ 1 , 4 , 5 , 10 , 2 ] # Printing list before shuffling print ( "The list before shuffling is : " , end = "") for i in range ( 0 , len (li)): print (li[i], end = " " ) print ( "r" ) # using shuffle() to shuffle the list random.shuffle(li) # Printing list after shuffling print ( "The list after shuffling is : " , end = "") for i in range ( 0 , len (li)): print (li[i], end = " " ) print ( "r" ) # using uniform() to generate random floating number in range # prints number between 5 and 10 print ( "The random floating point number between 5 and 10 is : " , end = "") print (random.uniform( 5 , 10 )) |
Producción:
The list before shuffling is : 1 4 5 10 2 The list after shuffling is : 2 1 4 5 10 The random floating point number between 5 and 10 is : 5.183697823553464