Я хочу проверить центральный лимит с кубиками. Ролл D кубики. Подведите итоги. Повторите то же самое для N раз. Измените D и повторите.
Нет необходимости хранить случайные значения, поэтому я хочу использовать только генераторы. Проблема в том, что генераторы потребляются; Я не могу использовать их много раз. Теперь мой код использует явное for
, и мне оно не нравится.
dice_numbers = (1, 2, 10, 100, 1000)
repetitions = 10000
for dice_number in dice_numbers: # how many dice to sum
sum_container = []
for r in range(repetitions):
rool_sum = sum((random.randint(1,6) for _ in range(dice_number)))
sum_container.append(rool_sum)
plot_histogram(sum_container)
Я хочу создать что-то вроде
for r in repetitions:
rools_generator = (random.randint(1,6) for _ in range(dice_number)
sum_generator = (sum(rools_generator) for _ in range(r))
но второй раз, когда я повторно использую rools_generator
, он потребляется. Нужно ли создавать класс генератора?