Numeri casuali in Python

Python definisce un insieme di funzioni utilizzate per generare o manipolare numeri casuali tramite il modulo casuale. 

Funzioni nel modulo casuale fare affidamento su una funzione di generazione di numeri pseudo-casuali random() che genera un numero float casuale compreso tra 0,0 e 1,0. Questo particolare tipo di funzioni viene utilizzato in molti giochi di lotterie o in qualsiasi applicazione che richieda la generazione di numeri casuali.

Vediamo un esempio di generazione di un random numero in Python usando il funzione casuale().

Python
   import   random   num   =   random  .  random  ()   print  (  num  )   

Produzione:  

 0.30078080420602904  

Diversi modi per generare un numero casuale in Python

Esistono diversi modi per generare numeri casuali in Python utilizzando le funzioni del modulo casuale Python. Vediamo alcuni modi diversi.

Generazione di un numero casuale usando la scelta()

Pitone scelta.casuale() è una funzione incorporata nel linguaggio di programmazione Python che restituisce un elemento casuale da a lista tupla O corda .

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

Produzione:

 5   
t

Generazione di un numero casuale utilizzando randrange()

Il modulo random offre una funzione in grado di generare numeri casuali Python da un intervallo specificato e consente anche spazio per includere i passaggi da chiamare randrange() .

Python
   # 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  (  random  .  choice  ([  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  ))   

Produzione:  

 A random number from list is : 4   
A random number from range is : 41

Generazione di un numero casuale utilizzando seed()

Pitone casuale.seme() La funzione viene utilizzata per salvare lo stato di una funzione casuale in modo che possa generare alcuni numeri casuali in Python su più esecuzioni del codice sulla stessa macchina o su macchine diverse (per un valore seed specifico). Il valore seed è il numero del valore precedente generato dal generatore. Per la prima volta quando non è presente alcun valore precedente utilizza l'ora di sistema corrente.

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

Produzione:  

 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

Generazione di un numero casuale utilizzando shuffle()

IL riproduzione casuale() la funzione viene utilizzata per mescolare una sequenza (elenco). Mescolare significa cambiare la posizione degli elementi della sequenza. Qui avviene l'operazione di mescolamento.

Python
   # 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  (  '  n  After the first shuffle : '  )   print  (  sample_list  )   # second shuffle   random  .  shuffle  (  sample_list  )   print  (  '  n  After the second shuffle : '  )   print  (  sample_list  )   

Produzione:

 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']

Generazione di un numero casuale utilizzando uniform()

IL uniforme() la funzione viene utilizzata per generare un numero casuale Python in virgola mobile tra i numeri menzionati nei suoi argomenti. Sono necessari due argomenti: limite inferiore (incluso nella generazione) e limite superiore (non incluso nella generazione).

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

Produzione:  

 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