logo

Modulo casuale Python

Il modulo Python Random è un modulo integrato per generare numeri interi casuali in Python. Questi numeri si verificano in modo casuale e non seguono alcuna regola o istruzione. Possiamo quindi utilizzare questo modulo per generare numeri casuali, visualizzare un elemento casuale per una lista o una stringa e così via.

La funzione random()

La funzione random.random() fornisce un numero float compreso tra 0,0 e 1,0. Non sono richiesti parametri per questa funzione. Questo metodo restituisce il secondo valore a virgola mobile casuale tra [0.0 e 1].

Codice

 # Python program for generating random float number import random num=random.random() print(num) 

Produzione:

 0.3232640977876686 

La funzione randint()

La funzione random.randint() genera un numero intero casuale dall'intervallo di numeri forniti.

Codice

 # Python program for generating a random integer import random num = random.randint(1, 500) print( num ) 

Produzione:

 215 

La funzione randrange()

La funzione random.randrange() seleziona un elemento in modo casuale dall'intervallo dato definito dai parametri start, stop e step. Per impostazione predefinita, l'inizio è impostato su 0. Allo stesso modo, il passo è impostato su 1 per impostazione predefinita.

Codice

 # To generate value between a specific range import random num = random.randrange(1, 10) print( num ) num = random.randrange(1, 10, 2) print( num ) 

Produzione:

 4 9 

La funzione choice()

La funzione random.choice() seleziona casualmente un elemento da una serie non vuota. Nel programma riportato di seguito, abbiamo definito una stringa, un elenco e un set. E utilizzando il metodo choice() sopra, viene selezionato un elemento casuale.

Codice

 # 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 ) 

Produzione:

 M 765 54 

La funzione shuffle()

La funzione random.shuffle() mescola casualmente l'elenco fornito.

Codice

 # To shuffle elements in the list list1 = [34, 23, 65, 86, 23, 43] random.shuffle( list1 ) print( list1 ) random.shuffle( list1 ) print( list1 ) 

Produzione:

 [23, 43, 86, 65, 34, 23] [65, 23, 86, 23, 34, 43] 

Programma Sasso-Carta-Forbice che utilizza il modulo casuale

Codice

 # 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() 

Produzione:

 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! 

Varie funzioni del modulo casuale

Di seguito è riportato l'elenco delle funzioni disponibili nel modulo random.

Funzione Descrizione
seme(a=Nessuno, versione=2) Questa funzione crea un nuovo numero casuale.
getstate() Questo metodo fornisce un oggetto che riflette lo stato attuale del generatore. Fornire l'argomento a setstate() per ripristinare lo stato.
setstato(stato) Fornendo l'oggetto stato si reimposta lo stato della funzione nel momento in cui è stato invocato getstate().
getrandbits(k) Questa funzione fornisce un intero Python con k bit casuali. Questo è importante per gli algoritmi di produzione di numeri casuali come randrange(), che possono gestire intervalli arbitrariamente enormi.
randrange(inizio, fine[, passo]) Dall'intervallo, produce un numero intero casuale.
ritorno(a, b) Fornisce un numero intero all'interno di a e b in modo casuale (entrambi inclusi). Se a > b, viene generato un ValueError.
scelta (segue) Produci a caso un elemento della serie non vuoto.
mescola (segue) Cambia l'ordine.
campione(popolazione, k) Visualizza un elenco di voci univoche di dimensione k dalle serie di popolazioni.
casuale() Questa funzione crea un nuovo numero casuale.
uniforme(a, b) Questo metodo fornisce un oggetto che riflette lo stato attuale del generatore. Fornire l'argomento a setstate() per ripristinare lo stato.
triangolare (basso, alto, modalità) Fornendo l'oggetto stato si reimposta lo stato della funzione nel momento in cui è stato invocato getstate().
guass (mu, sigma) Con la media e la deviazione standard, un numero float viene generato in modo casuale.
betavariata(alfa,beta) Con alfa e beta, viene generato casualmente un numero float compreso tra 0 e 1. - Distribuzione Beta espovariabile(lambda) Il numero float viene generato utilizzando l'argomento lambda. - Distribuzione esponenziale normalevariata(mu, sigma) Con la media e la deviazione standard, un numero float viene generato in modo casuale. - Distribuzione normale gamavariata(alfa, beta) Con alfa e beta, un numero float viene generato casualmente. - Distribuzione gamma

Conclusione

Per concludere, abbiamo appreso i vari metodi forniti dal modulo casuale di Python per gestire numeri interi, numeri in virgola mobile e altre sequenze come liste, tuple, ecc. Abbiamo anche osservato come il seme influenza il modello di numeri pseudo-casuali.