Взвешенная случайная выборка в питоне
ищу разумное определение функцииweighted_sample
это не возвращает только один случайный индекс для списка заданных весов (который был бы что-то вроде
def weighted_choice(weights, random=random):
""" Given a list of weights [w_0, w_1, ..., w_n-1],
return an index i in range(n) with probability proportional to w_i. """
rnd = random.random() * sum(weights)
for i, w in enumerate(weights):
if w