Losowy#
Wstęp#
Random zapewnia dostęp do modułu Pythona urandom , który jest domyślnie dostępny w VEXcode V5. 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:
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.seed– ustawia wartość początkową dlaurandomgeneratora liczb pseudolosowych.
randint#
randint zwraca losową liczbę całkowitą pomiędzy dwiema wartościami (włącznie), gdzie obie wartości są liczbami całkowitymi.
Usage:
urandom.randint(a, b)
Parametr |
Opis |
|---|---|
|
Liczba całkowita reprezentująca dolną granicę zakresu. |
|
Liczba całkowita reprezentująca całkowitą górną granicę zakresu. |
# 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)
mundur#
uniform zwraca losową liczbę zmiennoprzecinkową pomiędzy dwiema wartościami, gdzie obie wartości są liczbami zmiennoprzecinkowymi lub całkowitymi.
Usage:
urandom.uniform(start, end)
Parametr |
Opis |
|---|---|
|
Liczba zmiennoprzecinkowa lub całkowita określająca dolną granicę zakresu. |
|
Liczba zmiennoprzecinkowa lub całkowita określająca górną granicę zakresu. |
# 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 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:
urandom.randrange(start, stop, step)
Parametr |
Opis |
|---|---|
|
Opcjonalnie. Liczba całkowita reprezentująca wartość początkową zakresu (włącznie). Wartość domyślna to 0. |
|
Liczba całkowita reprezentująca wyłączną wartość końcową zakresu. |
|
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)
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)
nasienie#
seed ustala wartość początkową dla urandomgeneratora liczb pseudolosowych.
Jeśli nie ustawisz wartości początkowej, Twój projekt może generować tę samą losową sekwencję przy każdym uruchomieniu.
Aby uzyskać różne wyniki przy każdym przebiegu, ustaw wartość ziarnkową raz na początku projektu, używając wartości, która zmienia się między przebiegami — na przykład odczytów stanu baterii, wartości timera lub kombinacji obu tych wartości.
Usage:
urandom.seed(seed)
Parametr |
Opis |
|---|---|
|
Liczba całkowita używana do rozpoczęcia pseudolosowej sekwencji. |
# Set a different seed each time the project starts
urandom.seed(int(brain.battery.current()))