logo

Python Náhodný modul

Modul Python Random je vestavěný modul pro generování náhodných celých čísel v Pythonu. Tato čísla se vyskytují náhodně a neřídí se žádnými pravidly ani pokyny. Můžeme tedy pomocí tohoto modulu generovat náhodná čísla, zobrazovat náhodnou položku pro seznam nebo řetězec a podobně.

Funkce random().

Funkce random.random() poskytuje plovoucí číslo v rozsahu od 0,0 do 1,0. Pro tuto funkci nejsou vyžadovány žádné parametry. Tato metoda vrátí druhou náhodnou hodnotu s plovoucí desetinnou čárkou v rámci [0,0 a 1].

konverze typu a casting v jazyce Java

Kód

 # Python program for generating random float number import random num=random.random() print(num) 

Výstup:

 0.3232640977876686 

Funkce randint().

Funkce random.randint() generuje náhodné celé číslo z rozsahu zadaných čísel.

Kód

 # Python program for generating a random integer import random num = random.randint(1, 500) print( num ) 

Výstup:

 215 

Funkce randrange().

Funkce random.randrange() náhodně vybere položku z daného rozsahu definovaného parametry začátek, konec a krok. Ve výchozím nastavení je začátek nastaven na 0. Stejně tak je ve výchozím nastavení krok nastaven na 1.

Kód

 # To generate value between a specific range import random num = random.randrange(1, 10) print( num ) num = random.randrange(1, 10, 2) print( num ) 

Výstup:

 4 9 

Funkce choice().

Funkce random.choice() náhodně vybere položku z neprázdné série. V níže uvedeném programu jsme definovali řetězec, seznam a množinu. A pomocí výše uvedené metody choice() se vybere náhodný prvek.

Kód

 # To select a random element import random random_s = random.choice('Random Module') #a string print( random_s ) random_l = random.choice([23, 54, 765, 23, 45, 45]) #a list print( random_l ) random_s = random.choice((12, 64, 23, 54, 34)) #a set print( random_s ) 

Výstup:

 M 765 54 

Funkce shuffle().

Funkce random.shuffle() náhodně zamíchá daný seznam.

Kód

pouzdro na přepínač java
 # To shuffle elements in the list list1 = [34, 23, 65, 86, 23, 43] random.shuffle( list1 ) print( list1 ) random.shuffle( list1 ) print( list1 ) 

Výstup:

 [23, 43, 86, 65, 34, 23] [65, 23, 86, 23, 34, 43] 

Program Rock-Paper-Scissor pomocí náhodného modulu

Kód

 # import random module import random # Function to play game def start_game(): # Print games rules and instructions print(' This is Javatpoint's Rock-Paper-Scissors! ') print(' Please Enter your choice: ') print(' choice 1: Rock ') print(' choice 2: Paper ') print(' choice 3: Scissors ') #To take the user input choice_user = int(input(' Select any options from 1 - 3 : ')) # randint() Function which generates a random number by computer choice_machine = random.randint(1, 3) # display the machines choice print(' Option choosed by Machine is: ', end = ' ') if choice_machine == 1: print(' Rock ') elif choice_machine == 2: print('Paper') else: print('Scissors') # To declare who the winner is if choice_user == choice_machine: print(' Wow It's a tie! ') elif choice_user == 1 and choice_machine == 3: print(' Congratulations!! You won! ') elif choice_user == 2 and choice_machine == 1: print(' Congratulations!! You won! ') elif choice_user == 3 and choice_machine == 2: print(' Congratulations!! You won! ') else: print(' Sorry! The Machine Won the Game? ') # If user wants to play again play_again = input(' Want to Play again? ( yes / no ) ').lower() if play_again == ' yes ': start_game() else: print(' Thanks for playing Rock-Paper-Scissors! ') # Begin the game start_game() 

Výstup:

 This is Javatpoint's Rock-Paper-Scissors! Please Enter your choice: choice 1: Rock choice 2: Paper choice 3: Scissors Select any options from 1 - 3 : 1 Option choosed by Machine is: Rock Wow It's a tie! Want to Play again? ( yes / no ) yes This is Javatpoint's Rock-Paper-Scissors! Please Enter your choice: choice 1: Rock choice 2: Paper choice 3: Scissors Select any options from 1 - 3 : 2 Option choosed by Machine is: Scissors Congratulations!! You won! Want to Play again? ( yes / no ) no Thanks for playing Rock-Paper-Scissors! 

Různé funkce náhodného modulu

Následuje seznam funkcí dostupných v náhodném modulu.

Funkce Popis
seed(a=žádné, verze=2) Tato funkce vytvoří nové náhodné číslo.
getstate() Tato metoda poskytuje objekt odrážející současný stav generátoru. Zadejte argument pro setstate() pro obnovení stavu.
setstate (stav) Za předpokladu, že objekt state resetuje stav funkce v době, kdy byla vyvolána metoda getstate().
getrandbits(k) Tato funkce poskytuje pythonské celé číslo s k náhodnými bity. To je důležité pro algoritmy produkce náhodných čísel, jako je randrange(), které mohou spravovat libovolně velké rozsahy.
randrange(start, stop[, step]) Z rozsahu vytvoří náhodné celé číslo.
vrátit (a, b) Poskytuje celé číslo v rámci aab náhodně (oba včetně). Pokud a > b, je vyvolána hodnota ValueError.
volba (seq) Náhodně vyrobte neprázdnou sériovou položku.
zamíchat (seq) Změňte pořadí.
vzorek (populace, k) Zobrazte seznam jedinečných položek velikosti k z řady populace.
náhodný() Tato funkce vytvoří nové náhodné číslo.
uniforma (a, b) Tato metoda poskytuje objekt odrážející současný stav generátoru. Zadejte argument pro setstate() pro obnovení stavu.
trojúhelníkový (nízký, vysoký, režim) Za předpokladu, že objekt state resetuje stav funkce v době, kdy byla vyvolána metoda getstate().
guass (mu, sigma) Se střední a standardní odchylkou se náhodně generuje plovoucí číslo.
betavariát (alfa, beta) U alfa a beta se náhodně generuje plovoucí číslo mezi rozsahem 0 a 1. - Beta Distribuce expovariate (lambda) Float number je generováno pomocí argumentu lambda. - Exponenciální distribuce normální proměnná (mu, sigma) Se střední a standardní odchylkou se náhodně generuje plovoucí číslo. - Normální distribuce gamavariát (alfa, beta) U alfa a beta se plovoucí číslo generuje náhodně. - Gamma distribuce

Závěr

Na závěr jsme se dozvěděli o různých metodách, které nám Pythonův náhodný modul poskytuje pro práci s celými čísly, čísly s plovoucí desetinnou čárkou a dalšími posloupnostmi, jako jsou seznamy, n-tice atd. Také jsme se podívali na to, jak semeno ovlivňuje vzor pseudo náhodných čísel.