在Python中使用random.randint生成非整数?

4 投票
1 回答
11755 浏览
提问于 2025-04-16 03:05

我怎么能生成一个在0.1到0.9之间的随机数呢?

randint这个函数只能用来生成整数,没办法生成小数 =/

谢谢!

1 个回答

16

使用 random.uniform() 方法。对于你的例子,可以写成 random.uniform(0.1, 0.9)

这其实和使用 random.random() 得到一个在 0.0 到 1.0 之间的值,然后再对这个值进行缩放和移动是一样的:

def rand_float_range(start, end):
    return random.random() * (end - start) + start

撰写回答