Véletlen#

Bevezetés#

A Random metódus hozzáférést biztosít a Python random moduljához, amely alapértelmezés szerint elérhető a VEXcode AIR-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, viselkedések és autonóm döntéshozatal kiszámíthatatlanságának növelésére. A függvények használatának megkezdéséhez adjuk hozzá import random függvényt a projekt elejéhez.

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

Számgenerátorok – Közvetlenül állítanak elő véletlenszerű számokat vagy biteket.

  • 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.

  • random – Visszaad egy véletlenszerű lebegőpontos számot 0,0 (beleértve) és 1,0 (kizárva) között.

  • getrandbits – Egy megadott számú véletlenszerű bitből álló egész számot ad vissza.

Kiválasztás – Véletlenszerűen kiválaszt elemeket a szekvenciákból.

  • choice – Egy nem üres listából vagy sorozatból származó véletlenszerű elemet ad vissza.

Állapotvezérlés – A véletlenszám-generátor állapotának kezelése vagy inicializálása.

  • seed – Beállítja a véletlenszám-generátor determinisztikus eredmények előállításához szükséges kezdőértéket.

Számgenerátorok#

randint#

randint függvény egy véletlenszerű egész számot ad vissza a a (beleértve) és b (beleértve) közötti tartományból.

Usage:
random.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.

# 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 egy véletlenszerű lebegőpontos számot ad vissza start és end között.

Usage:
random.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
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 Az randrange 1 egy véletlenszerű egész számot ad vissza a megadott tartományból.

Usage:
random.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)
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 egy véletlenszerű lebegőpontos számot ad vissza a 0.0 (beleértve) és 1.0 (kizárva) közötti tartományból.

Usage:
random.random()

Paraméter

Leírás

Ennek a metódusnak nincsenek paraméterei.

# 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 Egy megadott számú véletlenszerű bitből álló egész számot ad vissza.

Usage:
random.getrandbits(n)

Paraméter

Leírás

n

Egy egész szám, amely a véletlenszerű bitek számát jelöli (0 <= n <= 32).

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

Kiválasztás#

choice#

choice véletlenszerűen kiválaszt és ad vissza egy elemet egy sorozatból.

Usage:
random.choice(sequence)

Paraméter

Leírás

sequence

Egy nem üres sorozat (lista, tuple vagy más indexelhető objektum), amelyből egy véletlenszerű elem kerül kiválasztásra.

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

Állami ellenőrzés#

seed#

seed inicializálja a véletlenszám-generátort, úgy beállítva az állapotát, hogy a véletlenszerű eredmények reprodukálhatók legyenek.

Usage:
random.seed(a=None)

Paraméter

Leírás

a

Opcionális. A kezdőérték. Lehet int, float, str, bytes vagy bytearray. Ha None (alapértelmezett), akkor az aktuális rendszeridő kerül felhasználásra.

random.seed(42)

# Always return the same results
print(random.randint(1, 10))
print(random.random())