如何在python中设置种子后得到真正的随机数

时间:2017-11-05 12:52:51

标签: python python-3.x

对于我的部分代码,我需要在每次运行代码时获得相同的“随机”数字,并使用random.seed(0)确保每次都返回相同的数字。但是,在代码的单独部分,我希望每次运行代码时都会有不同的数字。一旦设置了种子,每次调用任何随机函数时,它们返回的数字总是相同的。如何将预先确定的随机数与随机数组合起来?

1 个答案:

答案 0 :(得分:1)

您可以使用getstatesetstate,类似于

import random

state = random.getstate()  # saving the current state of the generator

random.seed(0)
random.randint(1, 10)

# some more fiddling with random
# ...

random.setstate(state)  # restore the original state

来自文档的信息:https://docs.python.org/3.5/library/random.html#random.getstate