Python浮点数省略

1、
在Python中浮点数乘法有一些奇怪的现象,例如如下

0.58*100 = 57.999999
int(57.999999)             #58 

这样的结果明显是不理想的,但是对于

0.56*100 = 56.00000000000001
int(0.56*100) = 56

而这个似乎又正常了,那怎么解决0.58那一个呢?int(round(0.58*100))即可,不要用ceil或者floor代替,否则对于其他情况都不符合了。

int(round(0.58*100))

出现这种情况的原因见奇怪的浮点现象
平时代码里还是会出现这样的错误的。

猜你喜欢

转载自blog.csdn.net/u013548568/article/details/79902412