0

我正在用 Python 中的大整数进行一些计算,但得到了一些奇怪的结果。

>>> 94970389L * 94958913L / 775920493L
11622692L
>>> 94970389L * 94958913L
9018284906627157L
>>> 775920493L * 11622692L
9018284906627156L

为什么第四行和第六行有区别?它应该是平等的。

我在 linux pc 32bits 上使用 Python 版本 2.7.3

4

1 回答 1

5

除法的余数是 1:

>>> 94970389L * 94958913L % 775920493L
1L

请记住,Python 2.x 中两个整数的除法默认是整数除法,余数被丢弃。

于 2012-06-03T04:44:27.740 回答