如何访问numpy默认全局随机数生成器

Ati*_*jun 6 python numpy python-3.x numpy-random

我需要创建一个类,它接受一个随机数生成器(即一个numpy.random.RandomState对象)作为参数.在没有指定此参数的情况下,我想将它分配给numpy运行时使用的随机生成器numpy.random.<random-method>.如何访问此全局生成器?目前我这样做只是将模块对象指定为随机生成器(因为它们共享方法/鸭子类型).然而,当酸洗(无法腌制模块对象)和深度复制时,这会导致问题.我想使用numpy.random后面的RandomState对象

PS:我正在使用python-3.4

use*_*ica 5

正如 kazemakase 所建议的那样,我们可以利用这样一个事实,即模块级函数numpy.random.random实际上是隐藏方法,通过直接从这些方法之一中numpy.random.RandomState提取:__self__

numpy_default_rng = numpy.random.random.__self__
Run Code Online (Sandbox Code Playgroud)