python中`//`运算符的用途是什么?

时间:2011-10-10 17:23:10

标签: python operators

  

可能重复:
  What is the reason for having '//' in Python?

//运营商的目的是什么?

x=10
y=2
print x/y
print x//y

两者都输出5作为值。

1 个答案:

答案 0 :(得分:21)

整数除法与浮动除法:

>>> 5.0/3
3: 1.6666666666666667
>>> 5.0//3
4: 1.0

或者当他们把它放在Python docs中时,//是“(浮动的)x和y”的商。上面的例子是在Python 2.7.2中运行的,它只对浮点数采用这种方式。如果你在2.7.2中使用整数,你会得到:

>>> 5/3
9: 1
>>> 5//3
10: 1

在Python 3.x中你会得到不同的结果,所以如果你真的想要这个版本,那就养成使用//的习惯,因为有一天它很重要:

Python 3.2.2 (default, Sep  4 2011, 09:51:08) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> 5/3
1.6666666666666667
>>> 5//3
1
>>> 5.0/3
1.6666666666666667
>>> 5.0//3
1.0