Python中随机种子的范围是什么?

Lyr*_*tor 23 python random scope random-seed

如果我random.seed(my_seed)在我的模块中的一个类中使用Python函数,这个种子是否会保留在此模块中实例化的所有其他类中?

Mar*_*ers 27

是的,为Random()模块中的(隐藏)全局实例设置种子.从文档:

此模块提供的函数实际上是random.Random类的隐藏实例的绑定方法.您可以实例化自己的实例Random以获取不共享状态的生成器.

Random()如果您需要将种子分开,请使用单独的实例; 您可以在实例化时传入新种子:

>>> from random import Random
>>> myRandom = Random(anewseed)
>>> randomvalue = myRandom.randint(0, 10)
Run Code Online (Sandbox Code Playgroud)

该类支持与模块相同的接口.