Véletlen számok Pythonban

A Python olyan függvénykészletet határoz meg, amely véletlen számok generálására vagy manipulálására szolgál a véletlenszerű modul. 

Funkciók a véletlenszerű modul egy random() pszeudo-véletlenszám-generátor függvényre támaszkodik, amely 0,0 és 1,0 közötti véletlenszerű lebegőszámot generál. Ezeket a különleges típusú funkciókat sok lottójátékban vagy bármilyen véletlenszám generálást igénylő alkalmazásban használják.

Lássunk egy példát a véletlen generálására szám Pythonban a random() függvény.

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

Kimenet:  

 0.30078080420602904  

Véletlenszám generálásának különböző módjai Pythonban

Számos módja van véletlen számok létrehozásának Pythonban a Python véletlenszerű modul funkcióival. Lássunk néhány különböző módot.

Véletlen szám generálása a option() használatával

Piton random.choice() egy beépített függvény a Python programozási nyelvben, amely egy véletlenszerű elemet ad vissza az a lista tuple vagy húr .

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

Kimenet:

 5   
t

Véletlen szám generálása a randrange() segítségével

A véletlenszerű modul egy olyan funkciót kínál, amely Python véletlen számokat generálhat egy meghatározott tartományból, és helyet ad az ún. 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  ))   

Kimenet:  

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

Véletlen szám generálása a seed() segítségével

Piton random.seed() A függvény egy véletlenszerű függvény állapotának mentésére szolgál, hogy a Pythonban véletlenszerű számokat generálhasson a kód többszöri végrehajtásakor ugyanazon a gépen vagy különböző gépeken (egy adott kezdőértékhez). A magérték a generátor által generált előző értékszám. Az első alkalommal, amikor nincs előző érték, akkor az aktuális rendszeridőt használja.

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

Kimenet:  

 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

Véletlen szám generálása a shuffle()

A keverés() A funkció egy sorozat (lista) keverésére szolgál. A keverés a sorozat elemeinek helyzetének megváltoztatását jelenti. Itt a keverési művelet a helyén van.

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  )   

Kimenet:

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

Véletlen szám generálása az uniform() segítségével

A egyenruha() A függvény lebegőpontos Python véletlenszámot generál az argumentumában említett számok között. Két argumentumra van szükség: alsó határ (beleértve a generációban) és felső határ (nem szerepel a generációban).

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

Kimenet:  

 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