Python:“/”和“//”对于多个数字给出不同的结果

问题描述 投票:0回答:1

这个问题给我的算法实现带来了困难:

>>> -19.9871/2.8553
-7.0
>>> -19.9871//2.8553
-8.0

第二师也应该回来

-7.0
。我想这与浮点错误有关,你知道另一种方法来获得预期的结果吗?使用
numpy.floor(-19.9871/2.8553)
但也许有更好的解决方案...

python
1个回答
0
投票

//
是楼层除法,从 -8 开始< -7, you get -8 instead of -7. For more information, see: 带有负数的楼层除法

© www.soinside.com 2019 - 2024. All rights reserved.