关于 php 和 python 的浮点计算 0.1+0.2

关于 php 和 python 的浮点计算 0.1+0.2

看到群里有小伙伴说为什么 python 计算出 0.1+0.2 是 0.30000000000000004

>>> print(0.1+0.2)
0.30000000000000004

而 php 计算出是“对“。

php > echo 0.1+0.2;
0.3

其实这两个结果都是正确的。
这是因为不同的语言在处理浮点时有不同的方式,而计算机在处理浮点时永远会有精度问题(这里的问题不是错误)。

可以使用 bcsub 来计算。

参考:

php的精度计算问题(bcadd和bcsub) https://blog.csdn.net/LJFPHP/article/details/82255389
php踩过的那些坑(1)浮点数计算 http://www.haodaquan.com/12
php 浮点数计算求靠谱的! https://segmentfault.com/q/1010000008103101

原文地址:https://www.cnblogs.com/F4NNIU/p/10286109.html