random.choices
pertenece al módulo random
y se usa para extraer múltiples elementos de una lista u otra secuencia. A diferencia de random.choice()
, que selecciona un único elemento, random.choices()
permite elegir varios, incluso con pesos personalizados.
random.choices(población, weights=None, cum_weights=None, k=1)
Parámetro | Descripción |
---|---|
población
|
Secuencia de la que se extraen elementos. |
weights
|
Lista de pesos relativos para cada elemento (opcional). |
cum_weights
|
Lista de pesos acumulativos (opcional, no se usa con weights ).
|
k
|
Número de elementos a seleccionar. |
import random
colores = ["rojo", "azul", "verde", "amarillo"]
seleccion = random.choices(colores, k=3)
print(seleccion) # Ejemplo: ['azul', 'rojo', 'verde']
Si algunos elementos deben aparecer con mayor frecuencia, se pueden usar pesos:
seleccion = random.choices(colores, weights=[10, 1, 1, 1], k=5)
print(seleccion) # "rojo" aparecerá más veces
seleccion = random.choices(colores, cum_weights=[10, 20, 25, 30], k=3)
print(seleccion)
Aquí, los valores indican la probabilidad acumulada de cada elemento.
Jorge García
Fullstack developer