python大数模

2024-07-05 09:48:02 发布

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

我在python 2.7.3中对大数进行mod,python给出了错误的答案,如下所示。如果数字很小,则给出正确答案。在

有谁能解释一下为什么会发生这种情况,以及我如何在python中进行修复?? 下面简单的脚本显示小数字mod显示正确答案,但大数字mod给出错误答案。在

root# cat mod.py 

bigNum=46623871433466988486147975697094761425185742805822717249007
smallNum=717249007

print "bigNum % 3: " + str(bigNum % 3)

print "smallNum % 3: " + str(smallNum % 3)

root# python mod.py

bigNum % 3: 0  
smallNum % 3: 1

提前感谢你的帮助。在


Tags: 答案py脚本mod错误情况数字root
1条回答
网友
1楼 · 发布于 2024-07-05 09:48:02

你希望它回来什么?在我看来:

>>> bigNum=46623871433466988486147975697094761425185742805822717249007
>>> bigNum % 3
0L
>>> divmod(bigNum, 3)
(15541290477822329495382658565698253808395247601940905749669L, 0L)
>>> _[0] * 3 == bigNum
True

注意,数字之和可被3整除,因此bigNum也是:

^{pr2}$

相关问题 更多 >