一尘不染

Python 2.7中的除法。和3.3

python

如何在Python 2.7中将两个数相除并得到带小数的结果?

我不明白为什么会有区别:

在Python 3中:

>>> 20/15
1.3333333333333333

在Python 2中:

>>> 20/15
1

这不是模数吗?


阅读 660

收藏
2020-02-16

共1个答案

一尘不染

在python 2.7中,/如果输入为整数,则运算符为整数除法。

如果要进行浮点除法(这是我一直喜欢的方法),只需使用以下特殊导入即可:

from __future__ import division

在这里看到它:

>>> 7 / 2
3
>>> from __future__ import division
>>> 7 / 2
3.5
>>>

通过使用进行整数除,使用进行//模除%

>>> 7 % 2
1
>>> 7 // 2
3
>>>

编辑

如所述user2357112,此导入必须在任何其他常规导入之前完成。

2020-02-16