You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中生成0到1之间保留两位小数的随机浮点数?

生成0到1之间保留两位小数的随机数

嘿,我来帮你搞定这个问题!生成0到1之间、仅保留两位小数的随机数其实有几种实用的方法,我给你逐一拆解:

方法1:用random.random() + round()函数

这是最直观的方式,先用random.random()生成一个0到1之间的随机浮点数,再用round()函数把它四舍五入到两位小数。示例代码如下:

import random

# 生成随机数并保留两位小数
random_num = round(random.random(), 2)
print(random_num)

注意:这种方法得到的结果可能会出现像0.9这样的一位小数(本质是0.90的简化显示),完全符合你给出的示例要求。不过要留意浮点数的精度问题——比如某些特殊数值可能会因为二进制存储的特性,导致round的结果和预期略有偏差,但绝大多数场景下完全够用。

方法2:生成整数再转换(精度更可控)

如果你想避免浮点数精度带来的小问题,可以换个思路:先生成0到99之间的随机整数,再除以100,这样得到的结果天然就是两位小数的形式:

import random

# 生成0-99的随机整数,再转为0.00-0.99的小数
random_num = random.randint(0, 99) / 100
print(random_num)

这个方法的优势是结果绝对精准,不会出现四舍五入带来的意外,比如你想要的0.22、0.25这类数值都能准确生成。

方法3:格式化输出(适合展示场景)

如果你的需求是输出时固定显示两位小数(比如把0.9显示为0.90),可以用字符串格式化来处理:

import random

raw_num = random.random()
formatted_num = "{:.2f}".format(raw_num)
# 如果你需要数值类型而不是字符串,再加一步转换:
formatted_num = float(formatted_num)
print(formatted_num)

这种方法适合需要统一格式展示的场景,比如报表、界面输出等。

内容的提问来源于stack exchange,提问作者December B

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.30 04:39:06