Véletlen#

Bevezetés#

A Random metódus hozzáférést biztosít a Python urandom moduljához, amely alapértelmezés szerint elérhető a VEXcode V5-ben. Ezek a metódusok lehetővé teszik véletlenszerű számok, lebegőpontos számok és értékek generálását listákból vagy tartományokból – ez hasznos a játékok, a viselkedések és az autonóm döntéshozatal kiszámíthatatlanságának növelésére.

Az alábbiakban felsoroljuk az elérhető módszereket:

  • randint – Két érték (a két értéket is beleértve) közötti véletlenszerű egész számot ad vissza.

  • uniform – Két érték közötti véletlenszerű lebegőpontos számot ad vissza.

  • randrange – Egy tartományból véletlenszerűen kiválasztott egész számot ad vissza, opcionális lépésközzel.

  • seed – beállítja a urandompszeudovéletlenszám-generátorának kezdőértékét.

randint#

A randint függvény egy véletlenszerűen generált egész számot ad vissza két érték között (a két értéket is beleértve), ahol mindkét érték egész szám.

Usage:
urandom.randint(a, b)

Paraméter

Leírás

a

Egy egész szám, amely a tartomány alsó korlátját jelöli.

b

Egy egész szám, amely a tartomány felső határát jelöli.

# Generate a random integer between
# 1 and 10 (inclusive)
urandom_int = urandom.randint(1, 10)
brain.screen.print(urandom_int)

# urandom_int = (random integer between 1 and 10)

egyenruha#

uniform Két érték között véletlenszerűen elhelyezkedő lebegőpontos számot ad vissza, ahol mindkét érték lebegőpontos vagy egész szám.

Usage:
urandom.uniform(start, end)

Paraméter

Leírás

start

Egy lebegőpontos szám vagy egész szám, amely a tartomány alsó határát jelöli.

end

Egy lebegőpontos szám vagy egész szám, amely a tartomány felső határát jelöli.

# Generate a random float 
# between 5.0 and 10.0
urandom_uniform = urandom.uniform(5.0, 10.0)
brain.screen.print(urandom_uniform)

# urandom_uniform = (random float 
# between 5.0 and 10.0)

randrange#

randrange Az randrange 1 egy véletlenszerű egész számot ad vissza egy tartományból, opcionális lépésközzel, ahol mind a kezdő, mind a végérték egész szám.

Usage:
urandom.randrange(start, stop, step)

Paraméter

Leírás

start

Opcionális. Egy egész szám, amely a tartomány kezdőértékét jelöli. Az alapértelmezett érték 0.

stop

Egy egész szám, amely a tartomány kizárólagos végértékét jelöli.

step

Opcionális. Egy egész szám, amely a tartományban lévő egyes számok közötti különbséget jelöli. Az alapértelmezett érték 1.

# Generate a random integer from
# 0 to 9 (exclusive of 10)
urandom_range = urandom.randrange(10)
brain.screen.print(urandom_range)

# urandom_range = (random integer from 0 to 9)

# Generate a random integer from
# 5 to 15 (exclusive of 15)
urandom_range = urandom.randrange(5, 15)
brain.screen.print(urandom_range)

# urandom_range = (random integer from 5 to 14)

# Generate a random integer from
# 10 to 50, stepping by 5
urandom_range = urandom.randrange(10, 50, 5)
brain.screen.print(urandom_range)

# urandom_range = (random multiple of 5 between 10 and 45)

mag#

A seed beállítja a urandompszeudo-véletlenszám-generátorának kezdőértékét.

Ha nem állítasz be kezdőértéket (seed), a projekted minden indításkor ugyanazt a véletlenszerű sorozatot hozhatja létre.

Ha minden futtatáskor eltérő eredményeket szeretne kapni, akkor a projekt elején egyszer állítsa be a kezdőértéket egy olyan értékkel, amely a futtatások között változik – például akkumulátor-értékkel, időzítőértékkel vagy a kettő kombinációjával.

Usage:
urandom.seed(seed)

Paraméter

Leírás

seed

Egy egész szám, amely a pszeudo-véletlenszerű sorozat indításához használható.

# Set a different seed each time the project starts
urandom.seed(int(brain.battery.current()))