Tilfældige tal i Python

Python definerer et sæt funktioner, der bruges til at generere eller manipulere tilfældige tal gennem tilfældigt modul. 

Funktioner i tilfældigt modul stole på en pseudo-tilfældigt tal generator funktion random(), som genererer et tilfældigt flydende tal mellem 0,0 og 1,0. Disse særlige typer funktioner bruges i mange spillotterier eller enhver applikation, der kræver generering af tilfældige tal.

Lad os se et eksempel på at generere en tilfældig antal i Python ved hjælp af tilfældig() funktion.

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

Produktion:  

 0.30078080420602904  

Forskellige måder at generere et tilfældigt tal i Python

Der er en række måder at generere tilfældige tal i Python ved hjælp af funktionerne i Python tilfældige modul. Lad os se et par forskellige måder.

Generering af et tilfældigt tal ved hjælp af valg()

Python random.choice() er en indbygget funktion i Python-programmeringssproget, der returnerer et tilfældigt element fra en liste tupel eller snor .

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

Produktion:

 5   
t

Generering af et tilfældigt tal ved hjælp af randrange()

Det tilfældige modul tilbyder en funktion, der kan generere tilfældige Python-tal fra et specificeret område og også giver plads til, at trin kan inkluderes kaldet 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  ))   

Produktion:  

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

Generering af et tilfældigt tal ved hjælp af seed()

Python random.seed() funktion bruges til at gemme tilstanden for en tilfældig funktion, så den kan generere nogle tilfældige tal i Python på flere udførelser af koden på den samme maskine eller på forskellige maskiner (for en specifik basisværdi). Frøværdien er det tidligere værdinummer genereret af generatoren. For første gang, når der ikke er nogen tidligere værdi, bruger den den aktuelle systemtid.

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

Produktion:  

 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

Generering af et tilfældigt tal ved hjælp af shuffle()

De blande() funktionen bruges til at blande en sekvens (liste). Blanding betyder at ændre placeringen af ​​elementerne i sekvensen. Her er blandeoperationen på plads.

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  )   

Produktion:

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

Generering af et tilfældigt tal ved hjælp af uniform()

De uniform() funktionen bruges til at generere et flydende punkt Python tilfældigt tal mellem de tal, der er nævnt i dens argumenter. Det kræver to argumenter, nedre grænse (inkluderet i generation) og øvre grænse (ikke inkluderet i generation).

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

Produktion:  

 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