logo

Модул Python Random

Модулът 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] 

Програма Rock-Paper-Scissor, използваща Random Module

Код

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

Различни функции на случаен модул

Следва списъкът с функции, налични в произволния модул.

функция Описание
seed (a=Няма, версия=2) Тази функция създава ново произволно число.
getstate() Този метод предоставя обект, отразяващ текущото състояние на генератора. Предоставете аргумента на setstate(), за да възстановите състоянието.
setstate(състояние) Предоставянето на обекта състояние нулира състоянието на функцията в момента, в който getstate() е извикан.
getrandbits(k) Тази функция предоставя цяло число на Python с k произволни бита. Това е важно за алгоритми за производство на произволни числа като randrange(), които могат да управляват произволно големи диапазони.
рандиапазон (начало, спиране [, стъпка]) От диапазона той произвежда произволно цяло число.
връщане (a, b) Осигурява произволно цяло число в рамките на a и b (и двете включително). Ако a > b, се хвърля ValueError.
избор (последователност) Произвеждане на случаен елемент от непразна серия.
разбъркване (последователност) Променете реда.
извадка (популация, k) Покажете списък с уникални записи с k-размер от популацията.
случаен() Тази функция създава ново произволно число.
униформа (а, б) Този метод предоставя обект, отразяващ текущото състояние на генератора. Предоставете аргумента на setstate(), за да възстановите състоянието.
триъгълен (нисък, висок, режим) Предоставянето на обекта състояние нулира състоянието на функцията в момента, в който getstate() е извикан.
гуас (мю, сигма) Със средното и стандартното отклонение произволно се генерира плаващо число.
бетавариант (алфа, бета) При алфа и бета, произволно се генерира плаващо число между диапазона 0 и 1. - Бета разпределение expovariate (ламбда) Числото с плаваща единица се генерира чрез използване на аргумента ламбда. - Експоненциално разпределение нормална променлива (мю, сигма) Със средното и стандартното отклонение произволно се генерира плаващо число. - Нормална дистрибуция gamavariate (алфа, бета) При алфа и бета, плаващо число се генерира на случаен принцип. - Гама разпределение

Заключение

В заключение, научихме за различни методи, които произволният модул на Python ни предоставя за работа с цели числа, числа с плаваща запетая и други последователности като списъци, кортежи и т.н. Също така разгледахме как семето влияе върху модела на псевдослучайни числа.