辽宁东方建设工程有限公司网站,网站建设采购,wordpress备份数库,网站建设申请书因为概率问题#xff0c;所以需要测试一下python的随机数分布。到底是平均#xff08;均匀#xff09;分布#xff0c;还是正态#xff08;高斯#xff09;分布。
测试代码如下#xff1a;
#! /usr/bin/env python
#codingutf-8
#
# Describe : 测试random随机数分布
#…因为概率问题所以需要测试一下python的随机数分布。到底是平均均匀分布还是正态高斯分布。
测试代码如下
#! /usr/bin/env python
#codingutf-8
#
# Describe : 测试random随机数分布
# DP 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}结果说明平均均匀分布。
以上就是本文的全部内容希望对大家的学习有所帮助也希望大家多多支持脚本之家。