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实现将绝对URL替换成相对URL的方法
Jun 28 Python
Python 列表排序方法reverse、sort、sorted详解
Jan 22 Python
python取代netcat过程分析
Feb 10 Python
Python内置模块hashlib、hmac与uuid用法分析
Feb 12 Python
DataFrame中去除指定列为空的行方法
Apr 08 Python
详解用python实现基本的学生管理系统(文件存储版)(python3)
Apr 25 Python
Django 1.10以上版本 url 配置注意事项详解
Aug 05 Python
Python面向对象封装操作案例详解 II
Jan 02 Python
python3中使用__slots__限定实例属性操作分析
Feb 14 Python
python批量生成条形码的示例
Oct 10 Python
使用Python爬虫爬取小红书完完整整的全过程
Jan 19 Python
python中urllib包的网络请求教程
Apr 19 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
PhpMyAdmin中无法导入sql文件的解决办法
2010/01/08 PHP
PHP 多维数组排序(usort,uasort)
2010/06/30 PHP
使用PHP强制下载PDF文件示例
2014/01/17 PHP
php遍历文件夹和文件列表示例分享
2014/03/11 PHP
PHP速成大法
2015/01/30 PHP
PHP实现网页内容html标签补全和过滤的方法小结【2种方法】
2017/04/27 PHP
Laravel 自定命令以及生成文件的例子
2019/10/23 PHP
Dojo 学习要点
2010/09/03 Javascript
window.open打开页面居中显示的示例代码
2013/12/27 Javascript
JavaScript中字符串分割函数split用法实例
2015/04/07 Javascript
JavaScript中用getDate()方法返回指定日期的教程
2015/06/09 Javascript
在IE8上JS实现combobox支持拼音检索功能
2016/05/23 Javascript
js实现对table的增加行和删除行的操作方法
2016/10/13 Javascript
JS添加或修改控件的样式(Class)实现方法
2016/10/15 Javascript
微信小程序 页面跳转和数据传递实例详解
2017/01/19 Javascript
详解vue中引入stylus及报错解决方法
2017/09/22 Javascript
浅谈vue项目如何打包扔向服务器
2018/05/08 Javascript
Express本地测试HTTPS的示例代码
2018/06/06 Javascript
vue使用echarts图表的详细方法
2018/10/22 Javascript
vue 属性拦截实现双向绑定的实例代码
2018/10/24 Javascript
vue实现图书管理系统
2020/12/29 Vue.js
使用Python发送邮件附件以定时备份MySQL的教程
2015/04/25 Python
Python读取图片属性信息的实现方法
2016/09/11 Python
win与linux系统中python requests 安装
2016/12/04 Python
python获取微信企业号打卡数据并生成windows计划任务
2019/04/30 Python
pygame实现弹球游戏
2020/04/14 Python
pyCharm 设置调试输出窗口中文显示方式(字符码转换)
2020/06/09 Python
手把手教你如何用Pycharm2020.1.1配置远程连接的详细步骤
2020/08/07 Python
canvas绘制表情包的示例代码
2018/07/09 HTML / CSS
给老婆的婚前保证书
2014/02/01 职场文书
小学生优秀评语大全
2014/04/22 职场文书
2014感恩节演讲稿大全
2014/10/11 职场文书
2015年社区综治工作总结
2015/04/21 职场文书
家长反馈意见及建议
2015/06/03 职场文书
为自己工作观后感
2015/06/11 职场文书
mysql死锁和分库分表问题详解
2021/04/16 MySQL