El módulo Python Random es un módulo integrado para generar números enteros aleatorios en Python. Estos números ocurren aleatoriamente y no siguen ninguna regla o instrucción. Por lo tanto, podemos usar este módulo para generar números aleatorios, mostrar un elemento aleatorio para una lista o cadena, etc.
La función aleatoria()
La función random.random() proporciona un número flotante que oscila entre 0,0 y 1,0. No se requieren parámetros para esta función. Este método devuelve el segundo valor de punto flotante aleatorio dentro de [0,0 y 1].
Código
# Python program for generating random float number import random num=random.random() print(num)
Producción:
0.3232640977876686
La función randint()
La función random.randint() genera un número entero aleatorio a partir del rango de números proporcionados.
Código
invirtiendo la cadena en java
# Python program for generating a random integer import random num = random.randint(1, 500) print( num )
Producción:
215
La función randrange()
La función random.randrange() selecciona un elemento aleatoriamente del rango dado definido por los parámetros de inicio, parada y paso. De forma predeterminada, el inicio se establece en 0. Asimismo, el paso se establece en 1 de forma predeterminada.
Código
mehta shloka
# To generate value between a specific range import random num = random.randrange(1, 10) print( num ) num = random.randrange(1, 10, 2) print( num )
Producción:
4 9
La función elección()
La función random.choice() selecciona al azar un elemento de una serie no vacía. En el programa que se proporciona a continuación, hemos definido una cadena, una lista y un conjunto. Y utilizando el método de elección () anterior, se selecciona un elemento aleatorio.
Código
# To select a random element import random random_s = random.choice('Random Module') #a string print( random_s ) random_l = random.choice([23, 54, 765, 23, 45, 45]) #a list print( random_l ) random_s = random.choice((12, 64, 23, 54, 34)) #a set print( random_s )
Producción:
M 765 54
La función aleatoria()
La función random.shuffle() baraja la lista dada de forma aleatoria.
red de arquitectura
Código
# To shuffle elements in the list list1 = [34, 23, 65, 86, 23, 43] random.shuffle( list1 ) print( list1 ) random.shuffle( list1 ) print( list1 )
Producción:
[23, 43, 86, 65, 34, 23] [65, 23, 86, 23, 34, 43]
Programa piedra-papel-tijera usando el módulo aleatorio
Código
# import random module import random # Function to play game def start_game(): # Print games rules and instructions print(' This is Javatpoint's Rock-Paper-Scissors! ') print(' Please Enter your choice: ') print(' choice 1: Rock ') print(' choice 2: Paper ') print(' choice 3: Scissors ') #To take the user input choice_user = int(input(' Select any options from 1 - 3 : ')) # randint() Function which generates a random number by computer choice_machine = random.randint(1, 3) # display the machines choice print(' Option choosed by Machine is: ', end = ' ') if choice_machine == 1: print(' Rock ') elif choice_machine == 2: print('Paper') else: print('Scissors') # To declare who the winner is if choice_user == choice_machine: print(' Wow It's a tie! ') elif choice_user == 1 and choice_machine == 3: print(' Congratulations!! You won! ') elif choice_user == 2 and choice_machine == 1: print(' Congratulations!! You won! ') elif choice_user == 3 and choice_machine == 2: print(' Congratulations!! You won! ') else: print(' Sorry! The Machine Won the Game? ') # If user wants to play again play_again = input(' Want to Play again? ( yes / no ) ').lower() if play_again == ' yes ': start_game() else: print(' Thanks for playing Rock-Paper-Scissors! ') # Begin the game start_game()
Producción:
This is Javatpoint's Rock-Paper-Scissors! Please Enter your choice: choice 1: Rock choice 2: Paper choice 3: Scissors Select any options from 1 - 3 : 1 Option choosed by Machine is: Rock Wow It's a tie! Want to Play again? ( yes / no ) yes This is Javatpoint's Rock-Paper-Scissors! Please Enter your choice: choice 1: Rock choice 2: Paper choice 3: Scissors Select any options from 1 - 3 : 2 Option choosed by Machine is: Scissors Congratulations!! You won! Want to Play again? ( yes / no ) no Thanks for playing Rock-Paper-Scissors!
Varias funciones del módulo aleatorio
A continuación se muestra la lista de funciones disponibles en el módulo aleatorio.
Función | Descripción |
---|---|
semilla(a=Ninguna, versión=2) | Esta función crea un nuevo número aleatorio. |
obtener estado() | Este método proporciona un objeto que refleja el estado actual del generador. Proporcione el argumento a setstate() para recuperar el estado. |
establecer estado(estado) | Proporcionar el objeto de estado restablece el estado de la función en el momento en que se invocó getstate(). |
obtener bits(k) | Esta función proporciona un entero de Python que tiene k bits aleatorios. Esto es importante para algoritmos de producción de números aleatorios como randrange(), que pueden gestionar rangos arbitrariamente enormes. |
randrange(inicio, parada[, paso]) | A partir del rango, produce un número entero aleatorio. |
retorno(a,b) | Proporciona un número entero dentro de a y b al azar (ambos inclusive). Si a > b, se genera un ValueError. |
elección (siguiente) | Produce un elemento de serie no vacío al azar. |
barajar (sec) | Cambia el orden. |
muestra(población, k) | Muestra una lista de entradas únicas de tamaño k de la serie de población. |
aleatorio() | Esta función crea un nuevo número aleatorio. |
uniforme (a, b) | Este método proporciona un objeto que refleja el estado actual del generador. Proporcione el argumento a setstate() para recuperar el estado. |
triangular (bajo, alto, modo) | Proporcionar el objeto de estado restablece el estado de la función en el momento en que se invocó getstate(). |
guass ( mu , sigma ) | Con media y desviación estándar, se genera aleatoriamente un número flotante. | betavariable(alfa,beta) | Con alfa y beta, se genera aleatoriamente un número flotante entre el rango 0 y 1. - Distribución Beta | expovariable(lambda) | El número flotante se genera utilizando el argumento lambda. - Distribución exponencial | variable normal (mu, sigma) | Con media y desviación estándar, se genera aleatoriamente un número flotante. - Distribución normal | gamavariada(alfa,beta) | Con alfa y beta, se genera aleatoriamente un número flotante. - Distribución gamma |
Conclusión
Para concluir, aprendimos sobre varios métodos que nos proporciona el módulo aleatorio de Python para tratar con números enteros, números de punto flotante y otras secuencias como listas, tuplas, etc. También observamos cómo la semilla afecta el patrón de números pseudoaleatorios.