Python中 numpy.random和random.random的区别

    工作中,遇到需要使用随机抽样的业务类型,然后就遇到了numpy.random和python自带的random包,查找了下二者本质上的区别,在此记录下。

    总的来说,两个包本质上就是没有区别!我是在stackoverflow上面找到的,贴出来源:

  https://stackoverflow.com/questions/7029993/differences-between-numpy-random-and-random-random-in-python

    大致意思就是说,两个库没啥本质区别了,都是使用Mersenne twister sequence 来生成它们的随机数,并且它们都是完全确定性的。也就是说,如果知道几个关键的信息位,则可以绝对确定地预测下一个要出现的数字。因此,两者都不合适对于任何严重的加密用途(Crypto.Random或许可以满足你的需求)。但是因为序列非常长,在日常程序中生成随机数都很好。如果你每次都在同一个地方开始(设置种子数),你总是会得到相同的序列的随机数。

    所以说,大家平时也就不用纠结使用哪个库来选择随机数了。不过numpy通常会有更丰富的函数选择,科学计算更合适。random.random就比较轻量级了。

发布了2 篇原创文章 · 获赞 0 · 访问量 4603
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览