Losowy#

Wstęp#

Metoda Random zapewnia dostęp do modułu Pythona random , który jest domyślnie dostępny w VEXcode VR. Metody te pozwalają generować liczby losowe, zmiennoprzecinkowe i wartości z list lub zakresów – przydatne do dodawania nieprzewidywalności do gier, zachowań i autonomicznego podejmowania decyzji.

Poniżej znajduje się lista dostępnych metod:

Generatory liczb – generowanie losowych liczb całkowitych, zmiennoprzecinkowych i bitów.

  • randint – Zwraca losową liczbę całkowitą pomiędzy dwiema wartościami (włącznie).

  • uniform – Zwraca losową liczbę zmiennoprzecinkową pomiędzy dwiema wartościami.

  • randrange – Zwraca losową liczbę całkowitą z zakresu z opcjonalnym krokiem.

  • random – Zwraca losową liczbę zmiennoprzecinkową z zakresu od 0,0 (włącznie) do 1,0 (bez ograniczeń).

  • getrandbits – Zwraca liczbę całkowitą z określoną liczbą losowych bitów.

Wybór – wybierz losowe elementy z list i sekwencji.

  • choice – Zwraca losowy element z niepustej listy lub sekwencji.

Generatory liczb#

randint#

randint zwraca losową liczbę całkowitą pomiędzy dwiema wartościami (włącznie), gdzie obie wartości są liczbami całkowitymi.

Usage:
random.randint(a, b)

Parametr

Opis

a

Liczba całkowita reprezentująca dolną granicę zakresu.

b

Liczba całkowita reprezentująca całkowitą górną granicę zakresu.

def main():
    # Generate a random integer between
    # 1 and 10 (inclusive)
    random_int = random.randint(1, 10)
    brain.print(random_int)

    # random_int = (random integer between 1 and 10)

# VR threads — Do not delete
vr_thread(main)

uniform#

uniform zwraca losową liczbę zmiennoprzecinkową pomiędzy dwiema wartościami, gdzie obie wartości są liczbami zmiennoprzecinkowymi lub całkowitymi.

Użycie:

random.uniform(start, end)

Parametr

Opis

start

Liczba zmiennoprzecinkowa lub całkowita określająca dolną granicę zakresu.

end

Liczba zmiennoprzecinkowa lub całkowita określająca górną granicę zakresu.

def main():
    # Generate a random float 
    # between 5.0 and 10.0
    random_uniform = random.uniform(5.0, 10.0)
    brain.print(random_uniform, precision=1)

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

# VR threads — Do not delete
vr_thread(main)

randrange#

randrange zwraca losową liczbę całkowitą z zakresu z opcjonalnym krokiem, gdzie zarówno wartość początkowa, jak i końcowa są liczbami całkowitymi.

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

Parametr

Opis

start

Opcjonalnie. Liczba całkowita reprezentująca wartość początkową zakresu (włącznie). Wartość domyślna to 0.

stop

Liczba całkowita reprezentująca wyłączną wartość końcową zakresu.

step

Opcjonalnie. Liczba całkowita reprezentująca różnicę między poszczególnymi liczbami w zakresie. Domyślnie 1.

def main():
    # Generate a random integer from
    # 0 to 9 (exclusive of 10)
    random_range = random.randrange(10)
    brain.print(random_range)

    # random_range = (random integer from 0 to 9)

# VR threads — Do not delete
vr_thread(main)

def main():
    # Generate a random integer from
    # 5 to 15 (exclusive of 15)
    random_range = random.randrange(5, 15)
    brain.print(random_range)

    # random_range = (random integer from 5 to 14)

# VR threads — Do not delete
vr_thread(main)

def main():
    # Generate a random integer from
    # 10 to 50, stepping by 5
    random_range = random.randrange(10, 50, 5)
    brain.print(random_range)

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

# VR threads — Do not delete
vr_thread(main)

random#

random zwraca losową liczbę zmiennoprzecinkową pomiędzy 0,0 (włącznie) i 1,0 (bez ograniczeń).

Usage:
random.random()

Parametr

Opis

Ta metoda nie ma żadnych parametrów.

def main():
    # Generate a random float between 0.0 and 1.0
    random_float = random.random()
    brain.print(random_float, precision=1)

    # random_float = (random float between 0.0 and 1.0)

# VR threads — Do not delete
vr_thread(main)

getrandbits#

getrandbits zwraca liczbę całkowitą o określonej liczbie losowych bitów, gdzie liczba bitów jest liczbą całkowitą z przedziału od 0 do 32.

Usage:
random.getrandbits(n)

Parametr

Opis

n

Liczba całkowita oznaczająca liczbę losowych bitów (0 <= n <= 32).

def main():
    # Generate a random integer with 8 random bits
    random_bits = random.getrandbits(8)
    brain.print(random_bits)

    # random_bits = (random integer between 0 and 255)

# VR threads — Do not delete
vr_thread(main)

Wybór#

choice#

choice zwraca losowy element z niepustej listy lub sekwencji.

Usage:
random.choice(sequence)

Parametr

Opis

sequence

Niepusta sekwencja (lista, krotka lub inny obiekt indeksowalny), z której wybierany jest losowy element.

def main():
    # Choose a random number from a list
    random_choice = random.choice([10, 20, 30, 40, 50])
    brain.print(random_choice)

    # random_choice = (randomly chosen number from the list)

# VR threads — Do not delete
vr_thread(main)