这个问题已经在这里有了答案: > Python integer division yields float 4个
我在python整数除法中观察到数据丢失.
下面是一个示例:
在[37]中:1881676377427221798261593926550420634004875213170503083 * 123456789789456123
输出[37]:232305724979817822068561403710502859128427941904411569030164388864727209
在[38]中:int(232305724979817822068561403710502859128427941904411569030164388864727209/123456789789456123)
Out [38]:1881676377427221679799422390196630516487239698149801984
在[39]中:232305724979817822068561403710502859128427941904411569030164388864727209/123456789789456123
出[39]:1.8816763774272217e 54
观察:经过多次尝试使用随机长整数,我观察到数字似乎在尾数指数格式失去精度的地方附近有所不同.
谁能帮我知道我想念的地方吗? (或者这真的是一个限制!)
最佳答案在Python 3中,整数除法不再是默认值.如果要在Python 3中使用整数除法,则需要使用//运算符而不是/.>>> 232305724979817822068561403710502859128427941904411569030164388864727209 / 1234567897894561231.8816763774272217e+54>>> 232305724979817822068561403710502859128427941904411569030164388864727209 // 1234567897894561231881676377427221798261593926550420634004875213170503083
总结 以上是内存溢出为你收集整理的在python中处理长整数除法 全部内容,希望文章能够帮你解决在python中处理长整数除法 所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)