Python的不同计算结果

2024-04-23 09:09:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我用Python得到了一个奇怪的计算结果:

11.66 * 0.98 * 1.05 + 1.7 + 0.70 * 1.03

在Python中,我得到的结果是14.41914

但是当我的客户用计算器和iPhone计算时,他们得到的结果是14.8300842

那么哪个是正确的结果呢? 是什么导致这个计算结果不同呢? 谢谢


Tags: 客户计算器iphone计算结果
3条回答

您的客户所做的似乎是:

>>> (11.66*0.98*1.05 + (1.7+0.7))*1.03
14.830084200000002
>>>

而python中的表达式:

>>> 11.66*0.98*1.05 + 1.7+0.7*1.03
14.419140000000001

是否先乘以:

>>> (11.66*0.98*1.05) + 1.7+(0.7*1.03)
14.419140000000001 

乘法是先做的,这是一个很强的惯例,但是台式计算器(real和appy)在输入数字时必须处理它们,所以可能会做不同的事情。你知道吗

正确的结果就是Python给出的结果。您的客户使用的计算器不考虑操作顺序,或者使用计算器时丢弃了操作顺序信息。你知道吗

14.41914是对的。你知道吗

((11.66*0.98)*1.05)+1.7)+0.70)*1.03)=14.8300842

所以他们忽略了加法和乘法的计算顺序。你知道吗

相关问题 更多 >