EJIO.utils.random package

Submodules

EJIO.utils.random.pool_generator module

EJIO.utils.random.pool_generator.generate_weighted_pool(weighted_items: dict[T, float], total_pulls: int, /) → list[T][исходный код]

Генерирует список случайных объектов на основе переданного словаря весов (вероятностей). Автоматически масштабируется и использует многопоточность для ускорения генерации больших пулов.

Пример: generate_weighted_pool({ItemA: 0.7, ItemB: 0.3}, total_pulls=100000)

Параметры:
  • weighted_items – Словарь вида {объект: float_вероятность}. Веса могут не суммироваться в 1.0.

  • total_pulls – Общее количество извлечений (размер результирующего списка).

Результат:

Список случайных объектов.

Исключение:

AttributeError – Если параметры заданы неверно.

Module contents

EJIO.utils.random.generate_weighted_pool(weighted_items: dict[T, float], total_pulls: int, /) → list[T][исходный код]

Генерирует список случайных объектов на основе переданного словаря весов (вероятностей). Автоматически масштабируется и использует многопоточность для ускорения генерации больших пулов.

Пример: generate_weighted_pool({ItemA: 0.7, ItemB: 0.3}, total_pulls=100000)

Параметры:
  • weighted_items – Словарь вида {объект: float_вероятность}. Веса могут не суммироваться в 1.0.

  • total_pulls – Общее количество извлечений (размер результирующего списка).

Результат:

Список случайных объектов.

Исключение:

AttributeError – Если параметры заданы неверно.