首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >random.random()与random.uniform()相同吗?

random.random()与random.uniform()相同吗?
EN

Stack Overflow用户
提问于 2016-03-09 02:15:44
回答 2查看 993关注 0票数 1

python的random.random()方法和random.uniform()方法有什么区别?

random.random()的结果不是均匀分布的吗?

代码语言:javascript
复制
import random

print(random.random() * 10)
print(random.uniform(0,10))
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-09 02:25:22

这是来自random.uniform模块的random.py的定义:

代码语言:javascript
复制
def uniform(self, a, b):
    return a + (b-a) * self.random()

所以,是的,是相同的分布。

票数 3
EN

Stack Overflow用户

发布于 2016-03-09 02:20:52

根据文档random.random()在[0,1.0]范围内返回一个数字,当random.uniform(a,b)返回a,b或[a,b)范围内的数字时,这取决于方程a + (b-a) * random()中的浮点舍入。

因此,print(random.random() * 10)print(random.uniform(0,10))都可以给出相同的发行版。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35881702

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档