为什么python失去精度乘以两个大整数?

时间:2017-07-25 21:58:33

标签: python

为什么python失去精度会乘以两个大整数?

考虑这两个随机数:

>>> x = 924787625893878964793582
>>> y = 247625893
>>> z = x // y
>>> z
3734616015676030
>>> ###so to find x, we do: z*y, but getting wrong result
>>> z * y 
924787625893878927444790

更新

Isn&#t; t z * y = x, 如果z = x / y

为什么Python会为两个不同的操作提供相同的结果:

>>> 924787625893878927444790 // 247625893
3734616015676030

>>> 924787625893878964793582 // 247625893
3734616015676030

1 个答案:

答案 0 :(得分:1)

您正在使用整数除法,因此小数部分会被截断。在第3行,使用一个斜杠。