为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 Python 中对大数进行正确的除法?

如何在 Python 中对大数进行正确的除法?

陪伴而非守候 2021-12-08 10:30:44
为什么在 int 和 float 中都存在除法错误?以及如何纠正它?print(int(231871064940156750/5),231871064940156750/5%100)# output: 46374212988031352 52.0# correct number: 46374212988031350
查看完整描述

2 回答

?
撒科打诨

TA贡献1934条经验 获得超2个赞

这里似乎有两个问题。我将解决您的打印语句的第一部分,即print(int(231871064940156750/5)):在 python 中查看此相关帖子长整数除法错误...


我尝试了其中的建议(使用两个斜线),结果达到了您预期的商数。


>>> print(int(231871064940156750//5))

46374212988031350

>>>

Informit.com解释说,“...Python 有两个除法运算符,一个用于经典除法的单斜杠字符和一个用于“floor”除法的双斜杠(向下舍入到最接近的整数)。经典除法意味着如果操作数都是整数,它将执行地板除法,而对于浮点数,它代表真正的除法。”


查看完整回答
反对 回复 2021-12-08
?
精慕HU

TA贡献1845条经验 获得超8个赞

这是一个非常好的解释

你需要的是

print(int(231871064940156750//5),231871064940156750/5%100)

使用 // 而不是 / 进行整数除法是为了与 Python 3.x 兼容,而不需要额外的努力。

还要确保快速浏览

对于 / 和 // 运算符


查看完整回答
反对 回复 2021-12-08
  • 2 回答
  • 0 关注
  • 790 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信