python3.x - Python随机数生成器的正确用法应该是什么

查看:99
本文介绍了python3.x - Python随机数生成器的正确用法应该是什么的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

写这段代码的起因是一道很简单的数学题:

数学上的做法如下:

在用笔算得出正确结果(4.5^100)后,想用Python写一段代码进行模拟以验证,代码如下:

import random
import datetime
T=100
ex=0
random.seed(datetime.datetime.now())
while T>0:
    y=1
    count=100
    while count>0:
        x=random.randint(0,9)
        y*=x
        count-=1
    ex+=y
    T-=1
ex/=100
print(ex)

然而每次输出的结果都是0,所以。。。Python的随机数生成器应该如何正确使用?

解决方案

期望值是大量实验的平均值,你这个是只是单次实验,你几次都得到0是因为,方差很大,结果主要分布在大数和0。结果不为0的概率也就是100个随机数中不出现0的概率,这就是0.9的100次方,大概0.000026,根据大数定理(还是什么其他定理来着,这学期的数理统计和概率论挂了?)可以算出你能模拟出期望所需的最少需要进行的实验次数

这篇关于python3.x - Python随机数生成器的正确用法应该是什么的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆