logo

Náhodný modul Python

Modul Python Random je vstavaný modul na generovanie náhodných celých čísel v Pythone. Tieto čísla sa vyskytujú náhodne a neriadia sa žiadnymi pravidlami ani pokynmi. Tento modul teda môžeme použiť na generovanie náhodných čísel, zobrazenie náhodnej položky pre zoznam alebo reťazec a pod.

Funkcia random().

Funkcia random.random() poskytuje pohyblivé číslo v rozsahu od 0,0 do 1,0. Pre túto funkciu nie sú potrebné žiadne parametre. Táto metóda vráti druhú náhodnú hodnotu s pohyblivou rádovou čiarkou v rámci [0,0 a 1].

kód

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

Výkon:

panel nástrojov rýchleho prístupu word
 0.3232640977876686 

Funkcia randint().

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

kód

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

Výkon:

 215 

Funkcia randrange().

Funkcia random.randrange() náhodne vyberie položku z daného rozsahu definovaného parametrami začiatok, koniec a krok. Štandardne je začiatok nastavený na 0. Podobne aj krok je štandardne 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ýkon:

Prepojený zoznam java
 4 9 

Funkcia choice().

Funkcia random.choice() náhodne vyberie položku z neprázdnej série. V nižšie uvedenom programe sme definovali reťazec, zoznam a množinu. A pomocou vyššie uvedenej metódy choice() sa vyberie náhodný prvok.

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ýkon:

 M 765 54 

Funkcia shuffle().

Funkcia random.shuffle() náhodne zamieša daný zoznam.

príklady dfa

kód

 # To shuffle elements in the list list1 = [34, 23, 65, 86, 23, 43] random.shuffle( list1 ) print( list1 ) random.shuffle( list1 ) print( list1 ) 

Výkon:

azúrové predplatné
 [23, 43, 86, 65, 34, 23] [65, 23, 86, 23, 34, 43] 

Program Rock-Paper-Scissor pomocou 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ýkon:

 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ôzne funkcie náhodného modulu

Nasleduje zoznam funkcií dostupných v náhodnom module.

Funkcia Popis
seed(a=žiadne, verzia=2) Táto funkcia vytvorí nové náhodné číslo.
getstate() Táto metóda poskytuje objekt odrážajúci súčasný stav generátora. Zadajte argument pre setstate() na obnovenie stavu.
setstate (stav) Za predpokladu, že objekt state resetuje stav funkcie v čase vyvolania funkcie getstate().
getrandbits(k) Táto funkcia poskytuje Pythonské celé číslo s k náhodnými bitmi. To je dôležité pre algoritmy na výrobu náhodných čísel, ako je randrange(), ktoré dokážu spravovať ľubovoľne veľké rozsahy.
randrange(start, stop[, step]) Z rozsahu vytvorí náhodné celé číslo.
vrátiť (a, b) Poskytuje celé číslo v rámci a a b náhodne (obe vrátane). Ak a > b, vyvolá sa hodnota ValueError.
výber (nasledujúci) Náhodne vytvorte neprázdnu sériovú položku.
zamiešať (sekv.) Zmeňte poradie.
vzorka (populácia, k) Zobrazte zoznam jedinečných položiek veľkosti k zo ​​série populácie.
náhodný() Táto funkcia vytvorí nové náhodné číslo.
uniforma (a, b) Táto metóda poskytuje objekt odrážajúci súčasný stav generátora. Zadajte argument pre setstate() na obnovenie stavu.
trojuholníkový (nízky, vysoký, režim) Za predpokladu, že objekt state resetuje stav funkcie v čase vyvolania funkcie getstate().
guass (mu, sigma) S priemernou a štandardnou odchýlkou ​​sa plávajúce číslo generuje náhodne.
betavariát (alfa, beta) Pri verziách alfa a beta sa náhodne generuje pohyblivé číslo medzi rozsahom 0 a 1. - Distribúcia beta expovariate (lambda) Pohyblivé číslo sa generuje pomocou argumentu lambda. - Exponenciálne rozdelenie normálna premenná (mu, sigma) S priemernou a štandardnou odchýlkou ​​sa plávajúce číslo generuje náhodne. - Normálna distribúcia gamavariát (alfa, beta) Pri verziách alfa a beta sa plávajúce číslo generuje náhodne. - Distribúcia gama

Záver

Na záver sme sa dozvedeli o rôznych metódach, ktoré nám poskytuje náhodný modul Pythonu na prácu s celými číslami, číslami s pohyblivou rádovou čiarkou a inými postupnosťami, ako sú zoznamy, n-tice atď. Tiež sme sa pozreli na to, ako seed ovplyvňuje vzor pseudo náhodných čísel.