logo

Moduł losowy Pythona

Moduł Python Random to wbudowany moduł do generowania losowych liczb całkowitych w Pythonie. Liczby te występują losowo i nie podlegają żadnym zasadom ani instrukcjom. Możemy zatem użyć tego modułu do generowania liczb losowych, wyświetlania losowego elementu na liście lub ciągu znaków i tak dalej.

Funkcja losowa().

Funkcja random.random() podaje liczbę zmiennoprzecinkową z zakresu od 0,0 do 1,0. Dla tej funkcji nie są wymagane żadne parametry. Ta metoda zwraca drugą losową wartość zmiennoprzecinkową w zakresie [0,0 i 1].

Kod

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

Wyjście:

np. znaczy
 0.3232640977876686 

Funkcja randint().

Funkcja random.randint() generuje losową liczbę całkowitą z podanego zakresu liczb.

Kod

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

Wyjście:

 215 

Funkcja Randrange().

Funkcja random.randrange() wybiera losowo element z podanego zakresu określonego przez parametry start, stop i step. Domyślnie początek jest ustawiony na 0. Podobnie krok jest domyślnie ustawiony na 1.

Kod

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

Wyjście:

shloka mehta
 4 9 

Funkcja choice().

Funkcja random.choice() wybiera losowo element z niepustej serii. W poniższym programie zdefiniowaliśmy ciąg znaków, listę i zbiór. Używając powyższej metody choice() wybierany jest losowy element.

Kod

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

Wyjście:

 M 765 54 

Funkcja shuffle().

Funkcja random.shuffle() losowo tasuje podaną listę.

formacie string

Kod

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

Wyjście:

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

Program kamień-papier-nożyce wykorzystujący moduł losowy

Kod

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

Wyjście:

 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óżne funkcje modułu losowego

Poniżej znajduje się lista funkcji dostępnych w module losowym.

Funkcjonować Opis
nasiono (a=Brak, wersja=2) Ta funkcja tworzy nową liczbę losową.
getstate() Metoda ta zapewnia obiekt odzwierciedlający aktualny stan generatora. Podaj argument funkcji setstate(), aby odzyskać stan.
setstate(stan) Dostarczenie obiektu stanu resetuje stan funkcji w momencie wywołania funkcji getstate().
getrandbits(k) Ta funkcja udostępnia liczbę całkowitą Pythona zawierającą k losowych bitów. Jest to ważne w przypadku algorytmów tworzenia liczb losowych, takich jak Randrange(), które mogą zarządzać dowolnie dużymi zakresami.
randrange(start, stop[, krok]) Z zakresu generuje losową liczbę całkowitą.
powrót (a, b) Podaje losowo liczbę całkowitą w obrębie a i b (oba włącznie). Jeśli a > b, zgłaszany jest błąd ValueError.
wybór (sekwencja) Wyprodukuj losowo niepusty element serii.
przetasuj (sekwencja) Zmień kolejność.
próbka (populacja, k) Wyświetl listę unikalnych wpisów wielkości k z serii populacji.
losowy() Ta funkcja tworzy nową liczbę losową.
jednolity(a, b) Metoda ta zapewnia obiekt odzwierciedlający aktualny stan generatora. Podaj argument funkcji setstate(), aby odzyskać stan.
trójkątny (niski, wysoki, tryb) Dostarczenie obiektu stanu resetuje stan funkcji w momencie wywołania funkcji getstate().
guass (mu, sigma) Przy średniej i odchyleniu standardowym liczba zmiennoprzecinkowa jest generowana losowo.
betazmienna (alfa, beta) W przypadku wersji alfa i beta liczba zmiennoprzecinkowa jest generowana losowo z zakresu od 0 do 1. - Dystrybucja Beta ekspowariancja (lambda) Liczba zmiennoprzecinkowa jest generowana przy użyciu argumentu lambda. - Rozkład wykładniczy normalna zmienna (mu, sigma) Przy średniej i odchyleniu standardowym liczba zmiennoprzecinkowa jest generowana losowo. - Normalna dystrybucja gamavariate(alfa, beta) W przypadku wersji alfa i beta liczba zmiennoprzecinkowa jest generowana losowo. - Rozkład gamma

Wniosek

Podsumowując, dowiedzieliśmy się o różnych metodach udostępnianych przez moduł losowy Pythona do radzenia sobie z liczbami całkowitymi, liczbami zmiennoprzecinkowymi i innymi sekwencjami, takimi jak listy, krotki itp. Przyjrzeliśmy się także, jak ziarno wpływa na wzorzec liczb pseudolosowych.