Aleatorio#

Introducción#

Random proporciona acceso al módulo random de Python, disponible por defecto en VEXcode AIM. Estos métodos permiten generar números aleatorios, valores de punto flotante y valores a partir de listas o rangos, lo cual resulta útil para añadir imprevisibilidad a juegos, comportamientos y toma de decisiones autónoma.

A continuación se muestra una lista de los métodos disponibles:

  • randint – Returns a random integer between two values (inclusive).

  • uniform – Returns a random float between two values.

  • randrange – Returns a random integer from a range with an optional step.

  • random – Returns a random float between 0.0 (inclusive) and 1.0 (exclusive).

  • getrandbits – Returns an integer with a specified number of random bits.

  • choice – Returns a random element from a non-empty list or sequence.

Generadores de números#

randint#

randint devuelve un entero aleatorio entre dos valores (inclusive), donde ambos valores son enteros.

Uso:
random.randint(a, b)

Parámetro

Descripción

a

Un número entero que representa el límite inferior inclusivo del rango.

b

Un número entero que representa el límite superior inclusivo del rango.

# Generate a random integer between
# 1 and 10 (inclusive)
random_int = random.randint(1, 10)
robot.screen.print(random_int)

# random_int = (random integer between 1 and 10)

uniform#

uniform devuelve un flotante aleatorio entre dos valores, donde ambos valores son flotantes o enteros.

Uso:
random.uniform(start, end)

Parámetro

Descripción

start

Un flotante o entero que representa el límite inferior del rango.

end

Un número flotante o entero que representa el límite superior del rango.

# Generate a random float between 5.0 and 10.0
random_uniform = random.uniform(5.0, 10.0)
robot.screen.print(random_uniform)

# random_uniform = (random float between 5.0 and 10.0)

randrange#

randrange devuelve un entero aleatorio de un rango con un paso opcional, donde los valores de inicio y de fin son enteros.

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

Parámetro

Descripción

start

Opcional. Un entero que representa el valor inicial inclusivo del rango. El valor predeterminado es 0.

stop

Un número entero que representa el valor final exclusivo del rango.

step

Opcional. Un entero que representa la diferencia entre cada número del rango. El valor predeterminado es 1.

# Generate a random integer from
# 0 to 9 (exclusive of 10)
random_range = random.randrange(10)
robot.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)
robot.screen.print(random_range)

# random_range = (random integer from 5 to 14)

# Generate a random integer from
# 10 to 50, stepping by 5
random_range = random.randrange(10, 50, 5)
robot.screen.print(random_range)

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

random#

random devuelve un flotante aleatorio entre 0,0 (inclusive) y 1,0 (exclusivo).

Uso:
random.random()

Parámetro

Descripción

Este método no tiene parámetros.

# Generate a random float between 0.0 and 1.0
random_float = random.random()
robot.screen.print(random_float)

# random_float = (random float between 0.0 and 1.0)

getrandbits#

getrandbits devuelve un entero con una cantidad específica de bits aleatorios, donde la cantidad de bits es un entero entre 0 y 32.

Uso:
random.getrandbits(n)

Parámetro

Descripción

n

Un número entero que representa la cantidad de bits aleatorios (0 <= n <= 32).

# Generate a random integer with 8 random bits
random_bits = random.getrandbits(8)
robot.screen.print(random_bits)

# random_bits = (random integer between 0 and 255)

Selección#

choice#

choice devuelve un elemento aleatorio de una lista o secuencia no vacía.

Uso:
random.choice(sequence)

Parámetro

Descripción

sequence

Una secuencia no vacía (lista, tupla u otro objeto indexable) de la que se selecciona un elemento aleatorio.

# Choose a random number from a list
random_choice = random.choice([10, 20, 30, 40, 50])
robot.screen.print(random_choice)

# random_choice = (randomly chosen number from the list)