pyxen.random

Genera números aleatorios. Disponible globalmente mediante from pyxen import *.

random.seed(42)
value = random.random()       # float en [0, 1)
roll = random.randint(1, 6)   # int en [1, 6]
pick = random.choice(items)   # elemento aleatorio de una secuencia

Métodos

MétodoDevuelveDescripción
seed(n)NoneEstablece la semilla para resultados reproducibles
random()floatFloat aleatorio en [0, 1)
randint(a, b)intEntero aleatorio en [a, b] inclusivo
choice(seq)elementoElemento aleatorio de una secuencia

seed(n)

random.seed(42)

Establece el estado interno del generador de números aleatorios. Usar la misma semilla produce la misma secuencia de números cada vez.

Esto es útil para:

  • Generación procedural reproducible
  • Comportamiento determinista del juego para depuración
  • Diseños de nivel consistentes entre ejecuciones

random()

value = random.random()

Devuelve un float aleatorio entre 0 (inclusivo) y 1 (exclusivo).

Ejemplo — velocidad aleatoria en cualquier dirección:

vx = (random.random() * 2.0) - 1.0   # rango [-1, 1)
vy = (random.random() * 2.0) - 1.0

randint(a, b)

roll = random.randint(1, 6)

Devuelve un entero aleatorio N tal que a <= N <= b. Ambos extremos están incluidos.

Ejemplo — probabilidad del 50%:

if random.randint(0, 1) == 1:
    spawn_coin()

Ejemplo — variante de tile aleatoria:

random.seed(42)
for col in range(COLS):
    alt = random.randint(0, 99) <= 10   # 10% de probabilidad
    tile = (1 if alt else 0, 4)

choice(seq)

color = random.choice(["red", "green", "blue"])

Devuelve un elemento aleatorio de una secuencia no vacía (lista, tupla o cadena).

Produce IndexError si la secuencia está vacía.

Ejemplo — posición de aparición aleatoria:

spawns = [(10, 20), (50, 80), (120, 40)]
x, y = random.choice(spawns)