Cos'è il generatore di numeri casuali in Python e come usarlo?



Scopri cosa sono i generatori di numeri casuali in python insieme alle varie funzioni integrate per generare numeri interi e numeri in virgola mobile.

Durante la creazione del software, i nostri programmi generalmente richiedono la produzione di vari articoli. Questo è più comune in applicazioni come giochi, generazione di OTP, giochi d'azzardo, ecc. rende il compito di generare questi valori senza sforzo con il suo built-in . In questo articolo sui generatori di numeri casuali in Python imparerai come generare numeri utilizzando le varie funzioni integrate.





Prima di proseguire, diamo un'occhiata agli argomenti discussi in questo tutorial:

Quindi iniziamo. :)



Cos'è il generatore di numeri casuali in Python?

Generatori sono funzioni che producono elementi ogni volta che vengono chiamati. I generatori di numeri casuali in Python sono funzioni integrate che ti aiutano a generare numeri come e quando richiesto. Queste funzioni sono incorporate nel modulo random di Pitone .

Dai un'occhiata alla seguente tabella che consiste in alcune importanti funzioni del generatore di numeri casuali insieme alla loro descrizione presente nel modulo casuale:



Funzione

Descrizione

seme ()

I valori prodotti saranno deterministici, il che significa che quando il numero seme è lo stesso, verrà generata la stessa sequenza di valori

randrange ()

Può restituire valori casuali compresi tra il limite e l'intervallo specificato

incontri ()

Restituisce un numero intero casuale compreso tra il limite specificato

scelta()

Restituisce un numero casuale da una sequenza

shuffle ()

Mescola una data sequenza

campione()

Restituisce elementi selezionati in modo casuale da una sequenza

uniforme()

Restituisce valori in virgola mobile compresi nell'intervallo specificato

Ora diamo uno sguardo più approfondito a ciascuno di questi.

Generazione di numeri interi:

Gli interi casuali possono essere generati utilizzando funzioni come randrange () e randint ().

Diamo prima un'occhiata a randint ().

incontri ():

differenza tra passaggio per valore e passaggio per riferimento in java

Questa funzione genera numeri interi compresi tra un dato limite. Richiede due parametri in cui il primo parametro specifica il limite inferiore e il secondo specifica il limite superiore. appuntamenti (a, b) inizia a generare valori da a a b tali che:

per<= x <= b (includes a and b)

ESEMPIO:

importazione casuale random.randint (2,9)

PRODUZIONE: 5

Il codice sopra può generare numeri da 2 a 9 compresi i limiti. Nel caso in cui desideri generare diversi valori tra questo intervallo, puoi utilizzare il per come segue:

ESEMPIO:

importa random per x nell'intervallo (2): print (random.randint (2,9))

PRODUZIONE:

2
6

Nel caso in cui desideri generare numeri in intervalli, puoi utilizzare la funzione randrange ().

randrange ():

La funzione randrange (), come accennato in precedenza, consente all'utente di generare valori superando il conteggio dell'intervallo.

class __init__ python

ESEMPIO:

importa random per x nell'intervallo (5): print (random.randrange (2,60,2))

PRODUZIONE:

3. 4
28
14
8
26

Come puoi vedere, tutti i numeri generati qui sono numeri pari compresi tra 2 e 6.

È inoltre possibile generare valori in virgola mobile utilizzando le funzioni incorporate del modulo random.

Generazione di valori in virgola mobile:

Per generare numeri in virgola mobile, puoi utilizzare le funzioni random () e uniform.

casuale():

Questa funzione produce valori in virgola mobile compresi tra 0,0 e 1,0 e quindi non accetta parametri. Si prega di notare che il limite superiore è escluso. Quindi il valore massimo sarà 9,999.

ESEMPIO:

importa random per x nell'intervallo (5): print (random.random ())

PRODUZIONE:

0.18156025373128404
0,19729969175918416
0.6998756928129068
0,16706232338156568
0,059292088577491575

uniforme():

A differenza della funzione random (), questa funzione accetta due parametri che determinano rispettivamente i limiti inferiore e superiore.

ESEMPIO:

per x nell'intervallo (5): print (random.uniform (6))

PRODUZIONE:

2.3135197730563335
5.752723932545697
4.561236813447408
3.8459675873377863
4.8252929712263235

Python consente anche di generare valori casuali anche da una data sequenza.

Generazione di valori da una data sequenza:

Questo può essere fatto usando le funzioni choice () e sample ().

scelta():

Questa funzione fondamentalmente prende una sequenza come parametro e ne restituisce valori casuali.

ESEMPIO:

per x nell'intervallo (3): print (random.choice ([1,2,3,4,5,6,7,8,9]))

PRODUZIONE:

3
uno
4

Come puoi vedere, nell'output precedente vengono restituiti tre valori utilizzando il ciclo for e tutti i valori vengono presi in modo casuale dalla lista data.

campione():

La funzione sample () preleva una sequenza casuale dalla sequenza data e la restituisce come output. Richiede due parametri in cui il primo parametro è una sequenza e il secondo è un valore intero che specifica quanti valori devono essere restituiti nell'output.

ESEMPIO:

print (random.sample ([1,2,3,4,5,6,7,8,9], 4))

PRODUZIONE: [1, 4, 5, 9]

Come puoi vedere, l'elenco di output prodotto nell'esempio precedente consiste di quattro valori selezionati casualmente dalla sequenza data.

Altre funzioni:

seme ():

La funzione seed () accetta un numero come parametro chiamato seed e produce gli stessi numeri casuali ogni volta che chiami questa funzione con quel numero.

ESEMPIO:

random.seed (2) print (random.random (), random.random (), random.random (), end = 'nn') random.seed (3) print (random.random (), random.random ( ), random.random (), end = 'nn') random.seed (2) print (random.random (), random.random (), random.random ())

PRODUZIONE:

0.9560342718892494 0.9478274870593494 0.05655136772680869 0.23796462709189137 0.5442292252959519 0.36995516654807925 0.9560342718892494 0.9478274870593494 0.05655136772680869

Nell'esempio precedente, l'output per seed (2) è lo stesso ogni volta che viene chiamato. Questa funzione è molto utile negli esperimenti in cui è necessario passare gli stessi numeri casuali a vari casi di test.

shuffle ():

a cosa serve Nagios

Questa funzione viene utilizzata per mescolare una determinata sequenza in modo casuale.

ESEMPIO:

mylist = [1,2,3,4,5,6,7,8,9] random.shuffle (mylist) print (mylist)

PRODUZIONE: [6, 8, 2, 4, 3, 7, 1, 5, 9]

Questo ci porta alla fine di questo articolo su 'Generatore di numeri casuali in Python'. Spero che tu abbia capito tutti i concetti.

Assicurati di esercitarti il ​​più possibile e di ripristinare la tua esperienza.

Hai domande per noi? Per favore, menzionalo nella sezione commenti di questo blog 'Generatore di numeri casuali in Python' e ti risponderemo il prima possibile.

Per ottenere una conoscenza approfondita di Python e delle sue varie applicazioni, puoi iscriverti a live con supporto 24 ore su 24, 7 giorni su 7 e accesso a vita.