以我的理解,如果你只需要区间 [0,1[ 中的一个伪随机数,你可以使用
numpy.random.rand()
和 numpy.random.random()
中的任何一个。如果您需要某种形式的更多数字,例如 2×3 矩阵,您有四种方法可以实现:
import numpy
x,y=2,3
s=(x,y)
numpy.random.random(s) # 1
numpy.random.rand(*s) # 2
numpy.random.random((x,y)) # 3
numpy.random.rand(x,y) # 4
rand(…)
包装 random_sample(…)
并且 random(…)
别名 random_sample(…)
。那么为什么两个函数会执行相同的操作(如果需要从调用中获取多个数字,则需要进行语法转换)?由于用户不鼓励使用random_sample(…)
,同样的劝阻是否也适用于rand(…)
和random(…)
?为什么或为什么不?
numpy.random.rand(…)
和numpy.random.random(…)
的标题说,“> … >传统随机生成>”。
因此,这两个功能都是遗留功能,即过时的。使用其他东西代替。当前的选择是来自 随机生成器的 numpy.random.Generator.random。
感谢让我意识到这一点,请访问 http://stackoverflow.com/users/9769953 .