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.