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入门之语句(if语句、while语句、for语句)
Jan 19 Python
Python的Django框架中的select_related函数对QuerySet 查询的优化
Apr 01 Python
Python使用修饰器执行函数的参数检查功能示例
Sep 26 Python
详解Python安装tesserocr遇到的各种问题及解决办法
Mar 07 Python
Python画图高斯分布的示例
Jul 10 Python
实现Python与STM32通信方式
Dec 18 Python
Django实现前台上传并显示图片功能
May 29 Python
Python如何在循环内使用list.remove()
Jun 01 Python
Python嵌入C/C++进行开发详解
Jun 09 Python
Python绘制组合图的示例
Sep 18 Python
Python+腾讯云服务器实现每日自动健康打卡
Dec 06 Python
python中对列表的删除和添加方法详解
Feb 24 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
让PHP更快的提供文件下载的代码
2012/06/13 PHP
ThinkPHP权限认证Auth实例详解
2014/07/22 PHP
codeigniter显示所有脚本执行时间的方法
2015/03/21 PHP
js 目录列举函数
2008/11/06 Javascript
jquery常用技巧及常用方法列表集合
2011/04/06 Javascript
基于jquery ajax 用户无刷新登录方法详解
2012/04/28 Javascript
基于jQuery实现左右div自适应高度完全相同的代码
2012/08/09 Javascript
在linux中使用包管理器安装node.js
2015/03/13 Javascript
jQuery对指定元素中指定字符串进行替换的方法
2015/03/17 Javascript
javascript伸缩菜单栏实现代码分享
2015/11/12 Javascript
JS键盘版计算器的制作方法
2016/12/03 Javascript
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
2016/12/14 Javascript
LayUI表格批量删除方法
2018/08/15 Javascript
vue+axios 前端实现的常用拦截的代码示例
2018/08/23 Javascript
Bootstrap 实现表格样式、表单布局的实例代码
2018/12/09 Javascript
详解vue2.6插槽更新v-slot用法总结
2019/03/09 Javascript
JavaScript实现的3D旋转魔方动画效果实例代码
2019/07/31 Javascript
详解基于原生JS验证表单组件xy-form
2019/08/20 Javascript
nodemon实现Typescript项目热更新的示例代码
2019/11/19 Javascript
手把手带你入门微信小程序新框架Kbone的使用
2020/02/25 Javascript
[02:30]联想杯DOTA2完美世界全国高校联赛—北京站现场
2015/11/16 DOTA
[01:18]PWL开团时刻DAY4——圣剑与抢盾
2020/11/03 DOTA
python 两个数据库postgresql对比
2019/10/21 Python
3种python调用其他脚本的方法
2020/01/06 Python
pyspark 随机森林的实现
2020/04/24 Python
python 检测nginx服务邮件报警的脚本
2020/12/31 Python
使用Python+Appuim 清理微信的方法
2021/01/26 Python
一款基于css3和jquery实现的动画显示弹出层按钮教程
2015/01/04 HTML / CSS
决心书标准格式
2014/03/11 职场文书
职业生涯规划书前言
2014/04/15 职场文书
学生党员一帮一活动总结
2014/07/08 职场文书
2014县委书记四风对照检查材料思想汇报
2014/09/21 职场文书
2015年小学教导处工作总结
2015/05/26 职场文书
幼儿园托班教育随笔
2015/08/14 职场文书
PHP新手指南
2021/04/01 PHP
Windows Server 版本 20H2 于 8 月 9 日停止支持,Win10 版本 21H1 将于 12 月结束支
2022/07/23 数码科技