Atsitiktinis#
Įvadas#
„Random“ suteikia prieigą prie „Python“ modulio random , kuris pagal numatytuosius nustatymus yra pasiekiamas „VEXcode AIR“. Šie metodai leidžia generuoti atsitiktinius skaičius, slankiojančias kablelio formas ir reikšmes iš sąrašų arba diapazonų – tai naudinga norint suteikti žaidimams, elgesiui ir autonominiam sprendimų priėmimui nenuspėjamumo. Norėdami pradėti naudoti šias funkcijas, projekto viršuje pridėkite import random.
Žemiau pateikiamas galimų metodų sąrašas:
Skaičių generatoriai – tiesiogiai generuoja atsitiktinius skaičius arba bitus.
randint– Grąžina atsitiktinį sveikąjį skaičių tarp dviejų reikšmių (imtinai).uniform– Grąžina atsitiktinę slankiojo skaičiaus reikšmę tarp dviejų reikšmių.randrange– Grąžina atsitiktinį sveikąjį skaičių iš diapazono su pasirenkamu žingsniu.random– Grąžina atsitiktinę slankiojo skaičiaus reikšmę nuo 0,0 (imtinai) iki 1,0 (neįskaičiuojant).getrandbits– Grąžina sveikąjį skaičių su nurodytu atsitiktinių bitų skaičiumi.
Pasirinkimas – Atsitiktinai parenkami elementai iš sekų.
choice– Grąžina atsitiktinį elementą iš netuščio sąrašo arba sekos.
Būsenos valdymas – valdyti arba inicijuoti atsitiktinių skaičių generatoriaus būseną.
seed– Nustato sėklą, pagal kurią atsitiktinių skaičių generatorius gauna deterministinius rezultatus.
Skaičių generatoriai#
randint#
Funkcija randint grąžina atsitiktinį sveikąjį skaičių diapazone a (imtinai) iki b (imtinai).
Usage:
random.randint(a, b)
Parametras |
Aprašymas |
|---|---|
|
Sveikasis skaičius, žymintis įtraukiąją apatinę diapazono ribą. |
|
Sveikasis skaičius, žymintis įtraukiąją viršutinę diapazono ribą. |
# Pick a number from 0 to 100
random_int = random.randint(0, 100)
controller.screen.print(random_int)
#random_int = (random integer between 0-100)
uniform#
uniform grąžina atsitiktinę slankiojo skaičiaus reikšmę tarp start ir end.
Usage:
random.uniform(start, end)
Parametras |
Aprašymas |
|---|---|
|
Slankiojo skaičiaus arba sveikasis skaičius, vaizduojantis apatinę diapazono ribą. |
|
Slankiojo skaičiaus arba sveikasis skaičius, vaizduojantis viršutinę diapazono ribą. |
# # Generate a random float between 5.0 and 10.0
random_uniform = random.uniform(5.0, 10.0)
controller.screen.print(random_uniform)
# random_uniform = (random float between 5.0 and 10.0)
randrange#
randrange grąžina atsitiktinį sveikąjį skaičių iš nurodyto diapazono.
Usage:
random.randrange(start, stop, step)
Parametras |
Aprašymas |
|---|---|
|
Pasirinktinai. Sveikasis skaičius, rodantis įtraukiąją pradinę diapazono reikšmę. Numatytoji reikšmė yra 0. |
|
Sveikasis skaičius, žymintis išskirtinę galinę diapazono reikšmę. |
|
Pasirinktinai. Sveikasis skaičius, rodantis skirtumą tarp kiekvieno diapazono skaičiaus. Numatytoji reikšmė yra 1. |
# Generate a random integer from
# 0 to 9 (exclusive of 10)
random_range = random.randrange(10)
controller.screen.print(random_range)
# random_range = (random integer from 0 to 9)
# Generate a random integer from
# 5 to 15 (exclusive of 15)
random_range = random.randrange(5, 15)
controller.screen.print(random_range)
# random_range = (random integer from 5 to 14)
random#
random grąžina atsitiktinę slankiojo skaičiaus reikšmę diapazone nuo 0,0 (imtinai) iki 1.0 (neįskaičiuojant).
Usage:
random.random()
Parametras |
Aprašymas |
|---|---|
Šis metodas neturi parametrų. |
# Generate a random float between 0.0 and 1.0
random_float = random.random()
controller.screen.print(random_float)
# random_float = (random float between 0.0 and 1.0)
getrandbits#
getrandbits grąžina sveikąjį skaičių su nurodytu atsitiktinių bitų skaičiumi.
Usage:
random.getrandbits(n)
Parametras |
Aprašymas |
|---|---|
|
Sveikasis skaičius, žymintis atsitiktinių bitų skaičių |
# Generate a random integer with 8 random bits
random_bits = random.getrandbits(8)
controller.screen.print(random_bits)
# random_bits = (random integer between 0 and 255)
Pasirinkimas#
choice#
choice atsitiktinai parenka ir grąžina vieną elementą iš sekos.
Usage:
random.choice(sequence)
Parametras |
Aprašymas |
|---|---|
|
Netuščia seka (sąrašas, rinkinys arba kitas indeksuojamas objektas), iš kurios pasirenkamas atsitiktinis elementas. |
# Choose a random number from a list
random_choice = random.choice([10, 20, 30, 40, 50])
controller.screen.print(random_choice)
# random_choice = (randomly chosen number from the list)
Valstybės kontrolė#
seed#
seed inicijuoja atsitiktinių skaičių generatorių, nustatydamas jo būseną taip, kad būtų galima atkurti atsitiktinius rezultatus.
Usage:
random.seed(a=None)
Parametras |
Aprašymas |
|---|---|
|
Pasirinktinai. Pradinė reikšmė. Gali būti sveikasis skaičius, slankiojantis skaičius, eilutė, baitai arba bytearray. Jei |
random.seed(42)
# Always return the same results
print(random.randint(1, 10))
print(random.random())