我需要生成一个介于 0 和 7 之间的随机数。但它必须包含最多 8 位左右的小数。例如:3.54367334 或 6.3464357。我在随机模块中没有找到任何可以给我类似的东西。一切都只有整数,或者从 0 到 1(这是 random.random)。
问问题
299 次
3 回答
4
如您所见,random.random
返回一个范围为 [0.0, 1.0) 的值。如果将其返回值乘以 7,则结果将在 [0.0, 7.0) 范围内。
还有一个函数 ,random.uniform
在给定范围的情况下,它将为您执行此操作。
于 2012-12-31T02:25:07.897 回答
4
虽然你可以rescale random.random
,但为什么不使用random.uniform呢?
>>> import random
>>> [random.uniform(0, 7) for i in range(4)]
[3.36879678022553, 1.3262017420571945, 2.961415926838038, 6.409486371437773]
于 2012-12-31T02:28:44.473 回答
0
您可以使用以下代码:
random.random() * 7
Asrandom.random
给出 0 到 1.0 之间的数字,* 7
将给出 (0, 7.0)
于 2020-04-03T06:26:51.407 回答