numpy.random.seed()的使用实例解析


Posted in Python onFebruary 03, 2018

这个函数的使用方法,已经有前辈讲解过了,只是自己在测试的时候有一些思考,所以便写了这篇博客。下面是前辈文章的原话:

seed( ) 用于指定随机数生成时所用算法开始的整数值,如果使用相同的seed( )值,则每次生成的随即数都相同,如果不设置这个值,则系统根据时间来自己选择这个值,此时每次生成的随机数因时间差异而不同。

编写如下第一份代码:

from numpy import *
num=0
while(num<5):
  random.seed(5)
  print(random.random())
  num+=1

运行结果为:

0.22199317108973948
0.22199317108973948
0.22199317108973948
0.22199317108973948
0.22199317108973948

可以看到,每次运行的结果都是一样的

修改代码,如下为第二份代码:

from numpy import *
num=0
random.seed(5)
while(num<5):
  print(random.random())
  num+=1

运行结果为:

0.22199317108973948
0.8707323061773764
0.20671915533942642
0.9186109079379216
0.48841118879482914

可以看到,和上一份代码的运行结果不同。这里每次的输出结果都是不一样的。这也就提醒了我们在以后编写代码的时候要明白一点:random.seed(something)只能是一次有效。其实仔细想想也很自然,如果不是一次有效,比如说是一直有效,那岂不是会影响到后续的代码中随机数的选取?

这次测试的代码比较可以说是很简单的,但是却暴露了我的一个思维上的漏洞:在这次测试中我虽然明白了:

seed( ) 用于指定随机数生成时所用算法开始的整数值,如果使用相同的seed( )值,则每次生成的随即数都相同,如果不设置这个值,则系统根据时间来自己选择这个值,此时每次生成的随机数因时间差异而不同。

这段话的意思,但是我却先入为主地认为第二份代码的结果应和第一份代码中的一致。而通过反面思考,假设这个函数使用一次后便是一直有效的,那么每次生成的随即数都会相同,但是这样岂不是会影响到后续的代码中随机数的选取?

所以,以后学新的东西的时候,都要问自己傻问题,不断地去测试自己的想法以达到更深的理解。

故对于该函数的使用,可总结为:

seed( ) 用于指定随机数生成时所用算法开始的整数值。
1.如果使用相同的seed( )值,则每次生成的随即数都相同;
2.如果不设置这个值,则系统根据时间来自己选择这个值,此时每次生成的随机数因时间差异而不同。
3.设置的seed()值仅一次有效

总结

以上就是本文关于numpy.random.seed()的使用实例解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
python的绘图工具matplotlib使用实例
Jul 03 Python
python快速查找算法应用实例
Sep 26 Python
python爬虫入门教程--正则表达式完全指南(五)
May 25 Python
django中的setting最佳配置小结
Nov 21 Python
Python2/3中urllib库的一些常见用法
Dec 19 Python
Python数据集切分实例
Dec 08 Python
python 堆和优先队列的使用详解
Mar 05 Python
Python实现图片识别加翻译功能
Dec 26 Python
python的slice notation的特殊用法详解
Dec 27 Python
Python configparser模块配置文件过程解析
Mar 03 Python
解决Windows下python和pip命令无法使用的问题
Aug 31 Python
解决python绘图使用subplots出现标题重叠的问题
Apr 30 Python
Python网络爬虫中的同步与异步示例详解
Feb 03 #Python
Python模块文件结构代码详解
Feb 03 #Python
Python处理文本换行符实例代码
Feb 03 #Python
Python断言assert的用法代码解析
Feb 03 #Python
Python下载网络小说实例代码
Feb 03 #Python
JS设计模式之责任链模式实例详解
Feb 03 #Python
numpy使用技巧之数组过滤实例代码
Feb 03 #Python
You might like
用PHP实现将GB编码转换为UTF8
2006/11/25 PHP
php xml文件操作实现代码(二)
2009/03/20 PHP
PHP number_format() 函数定义和用法
2012/06/01 PHP
PHP大小写问题:函数名和类名不区分,变量名区分
2013/06/17 PHP
JXTree对象,读取外部xml文件数据,生成树的函数
2007/04/02 Javascript
csdn 论坛技术区平均给分功能
2009/11/07 Javascript
JS获取dom 对象 ajax操作 读写cookie函数
2009/11/18 Javascript
js 处理URL实用技巧
2010/11/23 Javascript
JavaScript实现的链表数据结构实例
2015/04/02 Javascript
跟我学习javascript的严格模式
2015/11/16 Javascript
详解JavaScript的流程控制语句
2015/11/30 Javascript
JavaScript模拟push
2016/03/06 Javascript
JavaScript中实现无缝滚动、分享到侧边栏实例代码
2016/04/06 Javascript
第十章之巨幕页头缩略图与警告框组件
2016/04/25 Javascript
JS onkeypress兼容性写法详解
2016/04/27 Javascript
jQuery仿IOS弹出框插件
2017/02/18 Javascript
关于bootstrap日期转化,bootstrap-editable的简单使用,bootstrap-fileinput的使用详解
2017/05/12 Javascript
Vue-cli 使用json server在本地模拟请求数据的示例代码
2017/11/02 Javascript
laravel5.3 vue 实现收藏夹功能实例详解
2018/01/21 Javascript
Vue实现购物车的全选、单选、显示商品价格代码实例
2019/05/06 Javascript
JQuery实现ul中添加LI和删除指定的Li元素功能完整示例
2019/10/16 jQuery
解决$store.getters调用不执行的问题
2019/11/08 Javascript
微信小程序商品详情页底部弹出框
2019/11/22 Javascript
[02:27]2014DOTA2国际邀请赛 VG赛后采访:更大的挑战在等着我们
2014/07/13 DOTA
[01:00:52]2018DOTA2亚洲邀请赛 4.4 淘汰赛 EG vs LGD 第一场
2018/04/05 DOTA
Python实现文件信息进行合并实例代码
2018/01/17 Python
Python使用matplotlib和pandas实现的画图操作【经典示例】
2018/06/13 Python
俄罗斯优惠券网站:BIGLION
2017/05/21 全球购物
美国主要的特色咖啡和茶公司:Peet’s Coffee
2020/02/14 全球购物
关于迟到的检讨书
2014/01/26 职场文书
公司领导班子群众路线四风问题对照检查材料
2014/10/02 职场文书
不尊敬老师的检讨书
2014/12/21 职场文书
公积金贷款承诺书
2015/04/30 职场文书
2016年社区“6.26”禁毒日宣传活动总结
2016/04/05 职场文书
如何起草一份正确的合伙创业协议书?
2019/07/04 职场文书
创业计划书之美容店
2019/09/16 职场文书