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编程之微信推送模板消息功能示例
Aug 21 Python
关于Python数据结构中字典的心得
Dec 04 Python
python语音识别实践之百度语音API
Aug 30 Python
Python找出微信上删除你好友的人脚本写法
Nov 01 Python
python-opencv颜色提取分割方法
Dec 08 Python
python使用knn实现特征向量分类
Dec 26 Python
Python二叉树的镜像转换实现方法示例
Mar 06 Python
Python3 使用pillow库生成随机验证码
Aug 26 Python
利用Python实现某OA系统的自动定位功能
May 27 Python
python怎么对数字进行过滤
Jul 05 Python
python 使用OpenCV进行简单的人像分割与合成
Feb 02 Python
Python 解决空列表.append() 输出为None的问题
May 23 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
Extended CHM PHP 语法手册之 DIY
2006/10/09 PHP
PHP图片上传类带图片显示
2006/11/25 PHP
PHP时间格式控制符对照表分享
2013/07/23 PHP
PHP PDOStatement:bindParam插入数据错误问题分析
2013/11/13 PHP
php检测用户是否用手机(Mobile)访问网站的类
2014/01/09 PHP
PHP遍历目录函数opendir()、readdir()、closedir()、rewinddir()总结
2014/11/18 PHP
PHP操作MySQL的mysql_fetch_* 函数的常见用法教程
2015/12/25 PHP
php中输出json对象的值(实现方法)
2018/03/07 PHP
借用Google的Javascript API Loader来加速你的网站
2009/01/28 Javascript
web性能优化之javascript性能调优
2012/12/28 Javascript
jQuery判断当前点击的是第几个li的代码
2014/09/26 Javascript
Javascript与jQuery方法的隐藏与显示
2015/01/19 Javascript
Angularjs基础知识及示例汇总
2015/01/22 Javascript
体验jQuery和AngularJS的不同点及AngularJS的迷人之处
2016/02/02 Javascript
VUE2.0+ElementUI2.0表格el-table实现表头扩展el-tooltip
2018/11/30 Javascript
vue返回上一页面时回到原先滚动的位置的方法
2018/12/20 Javascript
mpvue实现小程序签到金币掉落动画(api实现)
2019/10/17 Javascript
vue 解决在微信内置浏览器中调用支付宝支付的情况
2020/11/09 Javascript
[10:24]郎朗助力完美“圣”典,天籁交织奏响序曲
2016/12/18 DOTA
python logging类库使用例子
2014/11/22 Python
Python基类函数的重载与调用实例分析
2015/01/12 Python
小小聊天室Python代码实现
2016/08/17 Python
Python中getpass模块无回显输入源码解析
2018/01/11 Python
python爬虫基本知识
2018/03/05 Python
Windows 7下Python Web环境搭建图文教程
2018/03/20 Python
Python中偏函数用法示例
2018/06/07 Python
Django 实现 Websocket 广播、点对点发送消息的代码
2020/06/03 Python
深入了解python列表(LIST)
2020/06/08 Python
HTML5 Canvas实现图片缩放、翻转、颜色渐变的代码示例
2016/02/28 HTML / CSS
介绍一下grep命令的使用
2015/06/12 面试题
建筑专业自我鉴定
2013/10/22 职场文书
财务部岗位职责
2013/11/19 职场文书
2014年信用社工作总结
2014/11/25 职场文书
行政上诉状范文
2015/05/23 职场文书
2015年秋季学校开学标语
2015/07/16 职场文书
python处理json数据文件
2022/04/11 Python