【发布时间】:2022-01-11 19:44:51
【问题描述】:
我的情况是我有浮点数(如 1.122、1.3232、1.22222)我需要始终按照数学规则将其四舍五入到小数点后 2 位:如果第三个是 5 或更高,则向上,向下是第三个低于5.
像这样(回合前 -> 回合后):
1.123 -> 1.12
1.1250 -> 1.13
1.0050 -> 1.01
1.0000 -> 1.00
1.00001 -> 1.00
(“.”后总是两个)
Python 中的哪种方式最适合这个? 我尝试了圆形函数、格式、numpy、十进制,但有时总是失败。提示赞赏!
【问题讨论】:
-
这能回答你的问题吗? How to round numbers
-
有时失败是什么意思?为什么你提到的功能都不适合你?
-
“我尝试了圆形函数、格式、numpy、十进制,但有时总是失败。”它是如何失败的?什么时候失败了?
-
A
float没有“小数位”的概念。数字1.0000、1.00和1.是完全相同的值。您是否尝试格式化数字,例如用于打印或写入文件? -
我对这个问题投了反对票,因为 OP 拒绝澄清他们是否要对数字进行四舍五入或格式化。