Losowy#

Wstęp#

Funkcja Random zapewnia dostęp do modułu Pythona random , który jest domyślnie dostępny w środowisku VEXcode AIR. 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. Aby rozpocząć korzystanie z tych funkcji, dodaj polecenie import random na początku projektu.

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

Generatory liczb – bezpośrednio generują losowe liczby lub bity.

  • 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 – losowe wybieranie elementów z sekwencji.

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

Kontrola stanu – zarządzanie lub inicjowanie stanu generatora liczb losowych.

  • seed – Ustawia ziarno dla generatora liczb losowych w celu wygenerowania deterministycznych wyników.

Generatory liczb#

randint#

randint zwraca losową liczbę całkowitą z zakresu a (włącznie) do b (włącznie).

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.

# 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 zwraca losową liczbę zmiennoprzecinkową pomiędzy start i end.

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

# # 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 zwraca losową liczbę całkowitą z określonego zakresu.

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.

# 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 zwraca losową liczbę zmiennoprzecinkową z zakresu od 0,0 (włącznie) do 1.0 (wyłącznie).

Usage:
random.random()

Parametr

Opis

Ta metoda nie ma żadnych parametrów.

# 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 zwraca liczbę całkowitą z określoną liczbą losowych bitów.

Usage:
random.getrandbits(n)

Parametr

Opis

n

Liczba całkowita oznaczająca liczbę losowych bitów (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)

Wybór#

choice#

choice wybiera i zwraca jeden element losowo z sekwencji.

Usage:
random.choice(sequence)

Parametr

Opis

sequence

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

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

Kontrola państwowa#

seed#

Ziarno seed inicjuje generator liczb losowych, ustawiając jego stan w taki sposób, aby możliwe było odtworzenie losowych wyników.

Usage:
random.seed(a=None)

Parametr

Opis

a

Opcjonalnie. Wartość początkowa. Może to być int, float, str, bytes lub tablica bajtów. Jeśli None (domyślnie), używany jest aktualny czas systemowy.

random.seed(42)

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