歌者文明清理员 发表于 2023-7-6 13:11:27

random.uniform到底是不是左闭右开的?!

陶远航 发表于 2023-7-6 13:11:39

是的,Python中的random.uniform函数是一个左闭右开的函数,也就是说它产生的随机数区间包含左边界,但不包含右边界。

具体来说,random.uniform(a, b)会生成一个位于[a, b)范围内的随机浮点数,其中a是左边界,b是右边界。左闭右开的设计是为了与Python中的索引和切片等操作保持一致,这样我们可以使用一个范围的起始位置和长度来定义一个切片。

下面是一个示例代码:

python
import random

a = 1
b = 10

random_number = random.uniform(a, b)
print(random_number)


此代码将生成一个位于[1, 10)范围内的随机浮点数,例如6.123456789。

如果您需要生成一个包含右边界的随机数,您可以使用random.random()函数结合数学运算来实现。例如,您可以使用以下代码生成一个在范围内的随机整数:

python
import random

a = 1
b = 10

random_number = random.uniform(a, b + 1)# 加上1以包含右边界
random_integer = int(random_number)# 转换为整数

print(random_integer)


请注意,无论如何,都建议在使用随机数时仔细阅读相关文档并进行测试,以确保满足您的需求。

liuhongrun2022 发表于 2023-7-6 13:13:33

你试试不就知道了

歌者文明清理员 发表于 2023-7-6 13:14:09

liuhongrun2022 发表于 2023-7-6 13:13
你试试不就知道了

那是小数哎,也有可能一直试不到

sfqxx 发表于 2023-7-6 13:14:42

相信文档,我觉得chatgpt不一定对

歌者文明清理员 发表于 2023-7-6 13:15:31

sfqxx 发表于 2023-7-6 13:14
相信文档,我觉得chatgpt不一定对

但runoob也不是官方的
我去查查python吧

歌者文明清理员 发表于 2023-7-6 13:16:10

陶远航 发表于 2023-7-6 13:11
是的,Python中的random.uniform函数是一个左闭右开的函数,也就是说它产生的随机数区间包含左边界,但不包 ...

检测一下是不是我,如果是我的话就不要回复{:10_277:}

isdkz 发表于 2023-7-6 13:17:32

歌者文明清理员 发表于 2023-7-6 13:15
但runoob也不是官方的
我去查查python吧

https://docs.python.org/zh-cn/3/library/random.html?highlight=uniform#random.uniform

官方文档和gpt4都说是左闭右闭的

歌者文明清理员 发表于 2023-7-6 13:19:25

isdkz 发表于 2023-7-6 13:17
https://docs.python.org/zh-cn/3/library/random.html?highlight=uniform#random.uniform

官方文档和 ...

歌者文明清理员 发表于 2023-7-6 13:25:49

歌者文明清理员 发表于 2023-7-6 13:19


@isdkz seeit

sfqxx 发表于 2023-7-6 15:53:21

歌者文明清理员 发表于 2023-7-6 13:25
@isdkz seeit

不一定?取决于等式?
页: [1]
查看完整版本: random.uniform到底是不是左闭右开的?!