在Python中,使用某个种子生成一些随机数但不重新设置全局状态的最佳方法是什么?在Java中,您可以简单地写一下:
Random r = new Random(seed);
r.nextDouble();
并且标准Math.random()
不会受到影响。在Python中,我能看到的最佳解决方案是:
old_state = random.getstate()
random.seed(seed)
random.random()
random.setstate(old_state)
这是惯用的Python吗?它似乎不如Java解决方案那么干净,不需要“恢复”旧种子。我很想知道是否有更好的方法来做到这一点。
答案 0 :(得分:23)