Я привык набирать random.randrange
. Я сделаю from random import Random
, чтобы определить ошибку с этого момента.
Для игры с процедурной генерацией (нет, это не клон Minecraft: p) я хотел бы сохранить несколько отдельных генераторов псевдослучайных чисел:
Причина в том, что я хочу иметь возможность воспроизвести первое, поэтому я не хочу, чтобы второе мешало.
Я думал random.Random
был создан для этого.Однако кое-что меня озадачивает:
import random
rnd = random.Random()
rnd.seed(0)
print [random.randrange(5) for i in range(10)]
rnd.seed(0)
print [random.randrange(5) for i in range(10)]
производит две разные последовательности. Когда я выполняю rnd = random
, все работает, как ожидалось, но мне нужно несколько генераторов.
Что мне не хватает?