Случайный#

Введение#

Функция random предоставляет доступ к модулю random Python, который по умолчанию доступен в VEXcode AIR. Эти методы позволяют генерировать случайные числа, числа с плавающей запятой и значения из списков или диапазонов — это полезно для добавления непредсказуемости в игры, поведение и автономное принятие решений. Чтобы начать использовать эти функции, добавьте import random в начало проекта.

Ниже приведён список доступных методов:

Генераторы чисел – напрямую генерируют случайные числа или биты.

  • randint – Возвращает случайное целое число в диапазоне от двух значений (включительно).

  • uniform – Возвращает случайное число с плавающей запятой между двумя значениями.

  • randrange – Возвращает случайное целое число из диапазона с необязательным шагом.

  • random – Возвращает случайное число с плавающей запятой от 0,0 (включительно) до 1,0 (исключительно).

  • getrandbits – Возвращает целое число с указанным количеством случайных битов.

Выбор – Случайный выбор элементов из последовательностей.

  • choice – Возвращает случайный элемент из непустого списка или последовательности.

Управление состоянием — управление или инициализация состояния генератора случайных чисел.

  • seed – Устанавливает начальное значение генератора случайных чисел для получения детерминированных результатов.

Генераторы чисел#

randint#

Функция randint возвращает случайное целое число в диапазоне a (включительно) до b (включительно).

Usage:
random.randint(a, b)

Параметр

Описание

a

Целое число, представляющее собой нижнюю границу диапазона включительно.

b

Целое число, представляющее собой верхнюю границу диапазона включительно.

# 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 возвращает случайное число с плавающей запятой в диапазоне от start до end.

Usage:
random.uniform(start, end)

Параметр

Описание

start

Число с плавающей запятой или целое число, представляющее нижнюю границу диапазона.

end

Число с плавающей запятой или целое число, представляющее верхнюю границу диапазона.

# # 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 возвращает случайное целое число из указанного диапазона.

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

Параметр

Описание

start

Необязательный параметр. Целое число, представляющее собой начальное значение диапазона включительно. Значение по умолчанию — 0.

stop

Целое число, представляющее собой единственное конечное значение диапазона.

step

Необязательный параметр. Целое число, представляющее разницу между каждым числом в диапазоне. По умолчанию — 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 возвращает случайное число с плавающей запятой в диапазоне от 0,0 (включительно) до 1.0 (исключительно).

Usage:
random.random()

Параметр

Описание

Этот метод не имеет параметров.

# 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 возвращает целое число с заданным количеством случайных битов.

Usage:
random.getrandbits(n)

Параметр

Описание

n

Целое число, представляющее количество случайных битов: (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)

Выбор#

choice#

choice выбирает и возвращает один элемент случайным образом из последовательности.

Usage:
random.choice(sequence)

Параметр

Описание

sequence

Непустая последовательность (список, кортеж или другой индексируемый объект), из которой выбирается случайный элемент.

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

Государственный контроль#

seed#

Начальное значение seed инициализируют генератор случайных чисел, устанавливая его состояние таким образом, чтобы можно было воспроизводить случайные результаты.

Usage:
random.seed(a=None)

Параметр

Описание

a

Необязательный параметр. Начальное значение генератора случайных чисел. Может быть целым числом, числом с плавающей запятой, строкой, байтами или массивом байтов. Если None (по умолчанию), используется текущее системное время.

random.seed(42)

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