Модуль Python Random — це вбудований модуль для генерації випадкових цілих чисел у Python. Ці числа виникають випадково й не відповідають жодним правилам чи інструкціям. Тому ми можемо використовувати цей модуль для генерації випадкових чисел, відображення випадкового елемента для списку або рядка тощо.
Функція random().
Функція random.random() дає число з плаваючою речовиною в діапазоні від 0,0 до 1,0. Для цієї функції не потрібні параметри. Цей метод повертає друге випадкове значення з плаваючою комою в межах [0,0 і 1].
Код
# Python program for generating random float number import random num=random.random() print(num)
Вихід:
0.3232640977876686
Функція randint().
Функція random.randint() генерує випадкове ціле число з наданого діапазону чисел.
Код
# Python program for generating a random integer import random num = random.randint(1, 500) print( num )
Вихід:
215
Функція randrange().
Функція random.randrange() вибирає елемент випадковим чином із заданого діапазону, визначеного параметрами початку, зупинки та кроку. За замовчуванням для початку встановлено значення 0. Так само для кроку за замовчуванням встановлено значення 1.
Код
# To generate value between a specific range import random num = random.randrange(1, 10) print( num ) num = random.randrange(1, 10, 2) print( num )
Вихід:
4 9
Функція choice().
Функція random.choice() вибирає елемент із непорожньої серії випадковим чином. У наведеній нижче програмі ми визначили рядок, список і набір. І за допомогою наведеного вище методу choice() вибирається випадковий елемент.
Код
# 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 )
Вихід:
M 765 54
Функція shuffle().
Функція random.shuffle() випадковим чином перемішує поданий список.
Код
# To shuffle elements in the list list1 = [34, 23, 65, 86, 23, 43] random.shuffle( list1 ) print( list1 ) random.shuffle( list1 ) print( list1 )
Вихід:
[23, 43, 86, 65, 34, 23] [65, 23, 86, 23, 34, 43]
Програма «Камінь-ножиці-папір» з використанням випадкового модуля
Код
# 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()
Вихід:
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!
Різні функції випадкового модуля
Нижче наведено список функцій, доступних у випадковому модулі.
функція | опис |
---|---|
насіння (a=немає, версія=2) | Ця функція створює нове випадкове число. |
getstate() | Цей метод забезпечує об’єкт, що відображає поточний стан генератора. Надайте аргумент setstate(), щоб відновити стан. |
setstate(стан) | Надання об’єкта стану скидає стан функції на момент виклику getstate(). |
getrandbits(k) | Ця функція надає ціле число Python, що має k випадкових бітів. Це важливо для алгоритмів виробництва випадкових чисел, таких як randrange(), який може керувати довільно великими діапазонами. |
randrange(початок, зупинка[, крок]) | З діапазону він створює випадкове ціле число. |
повернення (a, b) | Надає випадкове ціле число в межах a і b (обидва включно). Якщо a > b, видається помилка ValueError. |
вибір (послідовність) | Виготовте непорожній елемент серії навмання. |
перемішування (послідовність) | Змініть порядок. |
вибірка (популяція, k) | Відобразити список унікальних записів розміру k із ряду населення. |
випадковий() | Ця функція створює нове випадкове число. |
уніформа (а, б) | Цей метод забезпечує об’єкт, що відображає поточний стан генератора. Надайте аргумент setstate(), щоб відновити стан. |
трикутний (низький, високий, режим) | Надання об’єкта стану скидає стан функції на момент виклику getstate(). |
гуас (мю, сигма) | Із середнім і стандартним відхиленням число з плаваючою речовиною генерується випадковим чином. | бета-змінна (альфа, бета) | У альфа- та бета-версіях число з плаваючою точкою генерується випадковим чином між діапазоном 0 і 1. - Бета-розподіл | expovariate (лямбда) | Число з плаваючою точкою генерується за допомогою аргументу лямбда. - Експоненціальний розподіл | нормальна змінна (мю, сигма) | Із середнім і стандартним відхиленням число з плаваючою речовиною генерується випадковим чином. - Нормальний розподіл | gamavariate (альфа, бета) | У альфа- та бета-версіях число з плаваючою речовиною генерується випадковим чином. - Гамма-розподіл |
Висновок
Підсумовуючи, ми дізналися про різні методи, які надає нам випадковий модуль Python для роботи з цілими числами, числами з плаваючою комою та іншими послідовностями, такими як списки, кортежі тощо. Ми також розглянули, як початкове значення впливає на шаблон псевдовипадкових чисел.