„Python“ galite generuoti atsitiktinius skaičius naudodami atsitiktinį modulį.
„Python“ siūlo random
modulį, kuris gali generuoti atsitiktinius skaičius.
Tai pseudo-atsitiktinis skaičius, nes sugeneruoto skaičiaus seka priklauso nuo sėklos.
Jei sėjimo vertė yra ta pati, seka bus ta pati. Pavyzdžiui, jei sėjimo verte naudojate 2, visada matysite šią seką.
import random random.seed(2) print(random.random()) print(random.random()) print(random.random())
Išvestis visada bus tokia:
0,9560342718892494 0,9478274870593494 0,05655136772680869
Ne taip atsitiktinai? Kadangi šis generatorius yra visiškai deterministinis, jo negalima naudoti šifravimo tikslais.
Čia pateikiamas visų atsitiktiniame modulyje apibrėžtų funkcijų sąrašas ir trumpas jų veikimo paaiškinimas.
„Python“ atsitiktinio modulio funkcijų sąrašasFunkcija | apibūdinimas |
---|---|
sėkla (a = nėra, versija = 2) | Inicializuokite atsitiktinių skaičių generatorių |
getstate () | Pateikia objektą, užfiksuojantį dabartinę generatoriaus vidinę būseną |
setstate (valstija) | Atkuria generatoriaus vidinę būseną |
getrandbits (k) | Pateikia „Python“ sveikąjį skaičių su k atsitiktiniais bitais |
diapazonas (pradžia, sustabdymas (, žingsnis)) | Pateikia atsitiktinį skaičių iš diapazono |
randintas (a, b) | Pateikia atsitiktinį skaičių nuo a iki b imtinai |
pasirinkimas (sek.) | Pateikite atsitiktinį elementą iš ne tuščios sekos |
maišyti (sek.) | Sumaišykite seką |
imtis (populiacija, k) | Grąžinti unikalių elementų, pasirinktų iš populiacijos sekos, ak ilgio sąrašą |
atsitiktinis () | Grąžinkite kitą atsitiktinio slankiojo kablelio skaičių diapazone (0,0, 1,0) |
uniforma (a, b) | Pateikite atsitiktinį slankiojo kablelio skaičių tarp a ir b imtinai |
trikampis (žemas, aukštas, režimas) | Pateikite atsitiktinį slankiojo kablelio skaičių tarp mažo ir aukšto, nurodytą režimą tarp tų ribų |
betavariatas (alfa, beta) | Beta paskirstymas |
išplėsti (lambd) | Eksponentinis paskirstymas |
gammavariatas (alfa, beta) | Gama paskirstymas |
gausas (mu, sigma) | Gauso skirstinys |
lognormariuoti (mu, sigma) | Log normalus pasiskirstymas |
normalus kintamasis (mu, sigma) | Normalus skirstinys |
vonmisesvariate (mu, kappa) | Vonmises platinimas |
paretovariatas (alfa) | Pareto paskirstymas |
weibullvariate (alfa, beta) | „Weibull“ pasiskirstymas |
Apsilankykite šiame puslapyje, kad sužinotumėte daugiau apie tai, kaip „Python“ galite sugeneruoti pseudo atsitiktinius skaičius.