logo

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