Python definuje množinu funkcií, ktoré sa používajú na generovanie alebo manipuláciu s náhodnými číslami prostredníctvom náhodný modul.
Funkcie v náhodný modul spoliehať sa na funkciu generátora pseudonáhodných čísel random(), ktorá generuje náhodné pohyblivé číslo medzi 0,0 a 1,0. Tento konkrétny typ funkcií sa používa v mnohých hrách, lotériách alebo akýchkoľvek aplikáciách vyžadujúcich generovanie náhodných čísel.
Pozrime sa na príklad generovania náhodného čísla v Pythone pomocou funkcia random().
Python3
import> random> num>=> random.random()> print>(num)> |
java reťazec na celé číslo
>
>
Výkon:
0.30078080420602904>
Rôzne spôsoby generovania náhodného čísla v Pythone
Existuje niekoľko spôsobov, ako generovať náhodné čísla v Pythone pomocou funkcií náhodného modulu Python. Pozrime sa na niekoľko rôznych spôsobov.
Generovanie náhodného čísla pomocou voľby()
Python random.choice() je vstavaná funkcia v programovacom jazyku Python, ktorá vracia náhodnú položku zo zoznamu, násobný , alebo reťazec .
Python3
# import random> import> random> # prints a random value from the list> list1>=> [>1>,>2>,>3>,>4>,>5>,>6>]> print>(random.choice(list1))> # prints a random item from the string> string>=> 'striver'> print>(random.choice(string))> |
>
>
Výkon:
5 t>
Generovanie náhodného čísla pomocou randrange()
Náhodný modul ponúka funkciu, ktorá dokáže generovať náhodné čísla Pythonu zo špecifikovaného rozsahu a tiež poskytuje priestor pre kroky, ktoré sa nazývajú randrange() .
Python3
: v jave
# importing 'random' for random operations> import> random> # using choice() to generate a random number from a> # given list of numbers.> print>(>'A random number from list is : '>, end>=>'')> print>(random.choice([>1>,>4>,>8>,>10>,>3>]))> # using randrange() to generate in range from 20> # to 50. The last parameter 3 is step size to skip> # three numbers when selecting.> print>(>'A random number from range is : '>, end>=>'')> print>(random.randrange(>20>,>50>,>3>))> |
>
java switch int
>
Výkon:
A random number from list is : 4 A random number from range is : 41>
Generovanie náhodného čísla pomocou seed()
Python random.seed() funkcia sa používa na uloženie stavu náhodnej funkcie, aby mohla generovať nejaké náhodné čísla v Pythone pri viacerých vykonaniach kódu na rovnakom stroji alebo na rôznych strojoch (pre konkrétnu počiatočnú hodnotu). Počiatočná hodnota je predchádzajúce číslo hodnoty vygenerované generátorom. Prvýkrát, keď neexistuje žiadna predchádzajúca hodnota, použije aktuálny systémový čas.
Python3
# importing 'random' for random operations> import> random> # using random() to generate a random number> # between 0 and 1> print>(>'A random number between 0 and 1 is : '>, end>=>'')> print>(random.random())> # using seed() to seed a random number> random.seed(>5>)> # printing mapped random number> print>(>'The mapped random number with 5 is : '>, end>=>'')> print>(random.random())> # using seed() to seed different random number> random.seed(>7>)> # printing mapped random number> print>(>'The mapped random number with 7 is : '>, end>=>'')> print>(random.random())> # using seed() to seed to 5 again> random.seed(>5>)> # printing mapped random number> print>(>'The mapped random number with 5 is : '>, end>=>'')> print>(random.random())> # using seed() to seed to 7 again> random.seed(>7>)> # printing mapped random number> print>(>'The mapped random number with 7 is : '>, end>=>'')> print>(random.random())> |
>
>
Výkon:
A random number between 0 and 1 is : 0.510721762520941 The mapped random number with 5 is : 0.6229016948897019 The mapped random number with 7 is : 0.32383276483316237 The mapped random number with 5 is : 0.6229016948897019 The mapped random number with 7 is : 0.32383276483316237>
Generovanie náhodného čísla pomocou shuffle()
Funkcia shuffle() sa používa na premiešanie sekvencie (zoznamu). Miešanie znamená zmenu polohy prvkov sekvencie. Tu je operácia miešania na mieste.
čo je rom
Python3
# import the random module> import> random> # declare a list> sample_list>=> [>'A'>,>'B'>,>'C'>,>'D'>,>'E'>]> print>(>'Original list : '>)> print>(sample_list)> # first shuffle> random.shuffle(sample_list)> print>(>'
After the first shuffle : '>)> print>(sample_list)> # second shuffle> random.shuffle(sample_list)> print>(>'
After the second shuffle : '>)> print>(sample_list)> |
>
>
Výkon:
Original list : ['A', 'B', 'C', 'D', 'E'] After the first shuffle : ['A', 'B', 'E', 'C', 'D'] After the second shuffle : ['C', 'E', 'B', 'D', 'A']>
Generovanie náhodného čísla pomocou uniform()
Funkcia uniform() sa používa na generovanie náhodného čísla Pythonu s pohyblivou rádovou čiarkou medzi číslami uvedenými v jej argumentoch. Vyžaduje dva argumenty, dolný limit (zahrnutý do generovania) a horný limit (nezahrnutý do generovania).
Python3
# Python code to demonstrate the working of> # shuffle() and uniform()> # importing 'random' for random operations> import> random> # Initializing list> li>=> [>1>,>4>,>5>,>10>,>2>]> # Printing list before shuffling> print>(>'The list before shuffling is : '>, end>=>'')> for> i>in> range>(>0>,>len>(li)):> >print>(li[i], end>=>' '>)> print>(>'
'>)> # using shuffle() to shuffle the list> random.shuffle(li)> # Printing list after shuffling> print>(>'The list after shuffling is : '>, end>=>'')> for> i>in> range>(>0>,>len>(li)):> >print>(li[i], end>=>' '>)> print>(>'
'>)> # using uniform() to generate random floating number in range> # prints number between 5 and 10> print>(>'The random floating point number between 5 and 10 is : '>, end>=>'')> print>(random.uniform(>5>,>10>))> |
>
>
Výkon:
10 miliónov
The list before shuffling is : 1 4 5 10 2 The list after shuffling is : 2 1 4 5 10 The random floating point number between 5 and 10 is : 5.183697823553464>