使用其中一种有什么好处吗?在Python 2中,它们似乎都返回相同的结果:

>>> 6/3
2
>>> 6//3
2

当前回答

>>> print 5.0 / 2
2.5

>>> print 5.0 // 2
2.0

其他回答

>>> print 5.0 / 2
2.5

>>> print 5.0 // 2
2.0

双斜杠//是层划分:

>>> 7//3
2

Python 2。x澄清:

为Python阐明2。X线,/既不是层除法也不是真除法。

当两个参数都为int时,/为整除;但当其中一个参数为float时,/为真除法。

5.0//2的结果是2.0,而不是2,因为//操作符返回值的返回类型遵循Python强制转换(类型强制转换)规则。

Python促进低数据类型(整数)到高数据类型(浮点数)的转换,以避免数据丢失。

//实现“楼层划分”,不管你的类型是什么。所以 1.0/2.0会得到0.5,但是1/2 1//2和1.0//2.0都会得到0。

详见PEP 238:更改除法运算符。