Python数值计算的关注点

Python数值计算的关注点,第1张

概述我在 python中计算了以下2个值,得到了不同的结果!如果有人能够解释为什么会这样发生,那就太好了. (111-(111 2 * 17)* 3375)/( – 14)给出34947作为输出. (111 – (111 2 * 17)* 3375)/(14)* – 1给出34948作为输出. 这两个术语在数学上是等价的. 这与舍入规则有关.考虑一个更简单的例子: >>> -3/(-2)1>>> 我在 python中计算了以下2个值,得到了不同的结果!如果有人能够解释为什么会这样发生,那就太好了.

(111-(111 2 * 17)* 3375)/( – 14)给出34947作为输出.

(111 – (111 2 * 17)* 3375)/(14)* – 1给出34948作为输出.

这两个术语在数学上是等价的.

解决方法 这与舍入规则有关.考虑一个更简单的例子:

>>> -3/(-2)1>>> -3/2*-12

1.5向下舍入为1,-1.5向下舍入为-2.在某种程度上是一致的.

Doc reference:

Plain or long integer division yIElds an integer of the same type; the
result is that of mathematical division with the ‘floor’ function
applIEd to the result.

如果你想在Python 2.x中得到一个浮点结果,你需要一个显式转换(或者只是使用浮点文字),或者从__future__ import division开始.在Python 3.x中,除法总是产生一个浮点数(ref).

总结

以上是内存溢出为你收集整理的Python数值计算的关注点全部内容,希望文章能够帮你解决Python数值计算的关注点所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1193106.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存