Náhodný#

Zavedení#

Funkce Random poskytuje přístup k modulu Pythonu random , který je ve VEXcode AIR standardně k dispozici. Tyto metody umožňují generovat náhodná čísla, čísla s plovoucí čárkou a hodnoty ze seznamů nebo rozsahů – což je užitečné pro přidání nepředvídatelnosti do her, chování a autonomního rozhodování. Chcete-li tyto funkce začít používat, přidejte import random na začátek projektu.

Níže je uveden seznam dostupných metod:

Generátory čísel – Přímo generují náhodná čísla nebo bity.

  • randint – Vrátí náhodné celé číslo mezi dvěma hodnotami (včetně).

  • uniform – Vrací náhodné číslo s plovoucí desetinnou čárkou mezi dvěma hodnotami.

  • randrange – Vrátí náhodné celé číslo z rozsahu s volitelným krokem.

  • random – Vrací náhodné číslo s plovoucí desetinnou čárkou mezi 0,0 (včetně) a 1,0 (bez ní).

  • getrandbits – Vrátí celé číslo se zadaným počtem náhodných bitů.

Výběr – Náhodný výběr prvků ze sekvencí.

  • choice – Vrátí náhodný prvek z neprázdného seznamu nebo posloupnosti.

Řízení stavu – Správa nebo inicializace stavu generátoru náhodných čísel.

  • seed – Nastaví seed pro generátor náhodných čísel, aby produkoval deterministické výsledky.

Generátory čísel#

randint#

randint vrací náhodné celé číslo v rozsahu b (včetně) do a (včetně).

Usage:
random.randint(a, b)

Parametr

Popis

a

Celé číslo představující dolní hranici rozsahu (včetně inkluzivní).

b

Celé číslo představující horní hranici rozsahu (včetně inkluzivní).

# 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 vrací náhodné číslo s plovoucí čárkou mezi start a end.

Usage:
random.uniform(start, end)

Parametr

Popis

start

Číslo s desetinnou čárkou nebo celé číslo představující dolní hranici rozsahu.

end

Číslo s desetinnou čárkou nebo celé číslo představující horní hranici rozsahu.

# # 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 vrací náhodné celé číslo ze zadaného rozsahu.

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

Parametr

Popis

start

Volitelné. Celé číslo představující počáteční hodnotu rozsahu. Výchozí hodnota je 0.

stop

Celé číslo představující exkluzivní koncovou hodnotu rozsahu.

step

Volitelné. Celé číslo představující rozdíl mezi jednotlivými čísly v rozsahu. Výchozí hodnota je 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 vrací náhodné číslo s plovoucí desetinnou čárkou v rozsahu od 0,0 (včetně) do 1.0 (bez ní).

Usage:
random.random()

Parametr

Popis

Tato metoda nemá žádné parametry.

# 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 vrací celé číslo se zadaným počtem náhodných bitů.

Usage:
random.getrandbits(n)

Parametr

Popis

n

Celé číslo představující počet náhodných bitů (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)

Výběr#

choice#

choice vybere a vrátí jednu položku náhodně z dané sekvence.

Usage:
random.choice(sequence)

Parametr

Popis

sequence

Neprázdná sekvence (seznam, n-tice nebo jiný indexovatelný objekt), ze které je vybrán náhodný prvek.

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

Státní kontrola#

seed#

seed inicializuje generátor náhodných čísel a nastavuje jeho stav tak, aby bylo možné reprodukovat náhodné výsledky.

Usage:
random.seed(a=None)

Parametr

Popis

a

Volitelné. Počáteční hodnota. Může to být int, float, str, bytes nebo bytearray. Pokud je None (výchozí), použije se aktuální systémový čas.

random.seed(42)

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