Иметь стратегию, которая не делает одинакового выбора между разными стратегиями

Я хотел бы создать стратегию C, которая 90% времени выбирает стратегию A, а 10% выбирает стратегию B.

Библиотека случайных питонов не работает, даже если я заполняю ее, так как каждый раз, когда стратегия генерирует значения, она генерирует одно и то же значение из случайного.

Я посмотрел на реализацию OneOfStrategy, и они используют i = cu.integer_range(data, 0, n - 1), чтобы случайным образом сгенерировать число

cu из внутренней гипотезы импорта.internal.conjecture.utils как cu

Было бы хорошо для моей стратегии использовать cu.integer_range или есть другая реализация?

1 ответ

Гипотеза не позволяет пользователям контролировать вероятность различных вариантов в рамках стратегии. Вы также не должны использовать недокументированные интерфейсы - hypothesis.internal предназначен только для внутреннего использования и может сломаться в любое время!

Я настоятельно рекомендую использовать C = st.one_of(A, B) и доверяя гипотезе с деталями.

Другие вопросы по тегам