python随机数分布random测试


Posted in Python onAugust 27, 2018

因为概率问题,所以需要测试一下python的随机数分布。到底是平均(均匀)分布,还是正态(高斯)分布。

测试代码如下:

#! /usr/bin/env python
#coding=utf-8
 
 
# =================================
# Describe :   测试random随机数分布
# D&P Author By:       常成功
# Create Date:      2017/10/07
# Modify Date:      2017/10/20
# (C) 2012-2017 All rights reserved
# =================================
 
 
import random
import time
 
def test_rnd():
  st_tm = time.time()
  j = 0
  num = 0
  the_list = [1, 2, 3, 4]
  # 计数字典
  temp_dic = {1: 0, 2: 0, 3: 0, 4: 0}
  while 1:
    x = random.choice(the_list)
    temp_dic[x] += 1
    j += 1
    # 跑一千万次
    if j >= 10000000:
      break
  ed_tm = time.time()
  print "Test random.choice()---------------------------:"
  print "loop num: ", j
  print "take time: ", ed_tm-st_tm
  print "temp_dic :", temp_dic
 
  print "Test random.randint()---------------------------:"
  st_tm = time.time()
  j = 0
  num = 0
  # 计数字典
  temp_dic = {1: 0, 2: 0, 3: 0, 4: 0}
  while 1:
    x = random.randint(1, 4)
    temp_dic[x] += 1
    j += 1
    # 跑一千万次
    if j >= 10000000:
      break
  ed_tm = time.time()
  print "loop num: ", j
  print "take time: ", ed_tm-st_tm
  print "temp_dic :", temp_dic
 
 
if __name__ == '__main__':
  test_rnd()

测试结果:

Test random.choice()---------------------------:
loop num:  10000000
take time:  5.86599993706
temp_dic : {1: 2501333, 2: 2500117, 3: 2499406, 4: 2499144}
Test random.randint()---------------------------:
loop num:  10000000
take time:  12.493999958
temp_dic : {1: 2497732, 2: 2501411, 3: 2499372, 4: 2501485}

python随机数分布random测试

结果说明:平均(均匀)分布。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python访问sqlserver示例
Feb 10 Python
跟老齐学Python之类的细节
Oct 13 Python
Python列表append和+的区别浅析
Feb 02 Python
Python脚本处理空格的方法
Aug 08 Python
Python基于回溯法子集树模板解决取物搭配问题实例
Sep 02 Python
浅谈Python中的bs4基础
Oct 21 Python
pycharm+PyQt5+python最新开发环境配置(踩坑)
Feb 11 Python
windows10下安装TensorFlow Object Detection API的步骤
Jun 13 Python
python实现屏保程序(适用于背单词)
Jul 30 Python
基于Numba提高python运行效率过程解析
Mar 02 Python
在python中实现求输出1-3+5-7+9-......101的和
Apr 02 Python
PIL.Image.open和cv2.imread的比较与相互转换的方法
Jun 03 Python
pycharm安装和首次使用教程
Aug 27 #Python
Windows下PyCharm安装图文教程
Aug 27 #Python
python 3.7.0 安装配置方法图文教程
Aug 27 #Python
python 3.7.0 下pillow安装方法
Aug 27 #Python
python3.7.0的安装步骤
Aug 27 #Python
利用Django-environ如何区分不同环境
Aug 26 #Python
Django代码性能优化与Pycharm Profile使用详解
Aug 26 #Python
You might like
追忆往昔!浅谈收音机的百年发展历史
2021/03/01 无线电
php从csv文件读取数据并输出到网页的方法
2015/03/14 PHP
PHP SFTP实现上传下载功能
2017/07/26 PHP
PHP5.0 TIDY_PARSE_FILE缓冲区溢出漏洞的解决方案
2018/10/14 PHP
jMessageBox 基于jQuery的窗口插件
2009/12/09 Javascript
在html页面上拖放移动标签
2010/01/08 Javascript
js变换显示图片的实例
2013/04/16 Javascript
AngularJS入门教程之Hello World!
2014/12/06 Javascript
推荐6款基于jQuery实现图片效果插件
2014/12/07 Javascript
Bootstrap 组件之按钮(二)
2016/05/11 Javascript
BOM系列第二篇之定时器requestAnimationFrame
2016/08/17 Javascript
ES6中字符串string常用的新增方法小结
2017/11/07 Javascript
30分钟快速入门掌握ES6/ES2015的核心内容(上)
2018/04/18 Javascript
移动端H5页面返回并刷新页面(BFcache)的方法
2018/11/06 Javascript
Vue.js仿Select下拉框效果
2020/02/18 Javascript
python编程-将Python程序转化为可执行程序[整理]
2007/04/09 Python
Python3里的super()和__class__使用介绍
2015/04/23 Python
Python在Windows和在Linux下调用动态链接库的教程
2015/08/18 Python
django admin添加数据自动记录user到表中的实现方法
2018/01/05 Python
Python之使用adb shell命令启动应用的方法详解
2019/01/07 Python
pycharm 更改创建文件默认路径的操作
2020/02/15 Python
详解Pycharm出现out of memory的终极解决方法
2020/03/03 Python
python+selenium 脚本实现每天自动登记的思路详解
2020/03/11 Python
Django-Scrapy生成后端json接口的方法示例
2020/10/06 Python
Python 获取异常(Exception)信息的几种方法
2020/12/29 Python
开普敦通行证:Cape Town Pass
2019/07/18 全球购物
巴西一家专门从事家居和装饰的连锁店:Camicado
2019/08/14 全球购物
介绍下Java的输入输出流
2014/01/22 面试题
sealed修饰符是干什么的
2012/10/23 面试题
教育专业自荐书范文
2013/12/17 职场文书
师范院校学生自荐信范文
2013/12/27 职场文书
探亲邀请信范文
2014/01/30 职场文书
春风化雨观后感
2015/06/11 职场文书
初一军训感言
2015/08/01 职场文书
Python中的min及返回最小值索引的操作
2021/05/10 Python
MySQL日期时间函数知识汇总
2022/03/17 MySQL