猿问

请问python中// 和/区别在哪儿

请问python中// 和/区别在哪儿

白猪掌柜的
浏览 370回答 2
2回答

蝴蝶不菲

通常C/C++中,"/ " 算术运算符的计算结果是根据参与运算的两边的数据决定的,比如:  6 / 3 = 2 ; 6,3都是整数,那么结果也就是整数2;  6.0 / 3.0 = 2.0 ; 6.0,3.0是浮点数,那么结果也是浮点数2.0,跟精确的说,只要" / " 两边有一个数是浮点数,那么结果就是浮点数。  在Python2.2版本以前也是这么规定的,但是,Python的设计者认为这么做不符合Python简单明了的特性,于是乎就在Python2.2以及以后的版本中增加了一个算术运算符" // "来表示整数除法,返回不大于结果的一个最大的整数,而" / " 则单纯的表示浮点数除法,但是,为了折中,所有2.X版本中,也是为了向后兼容,如果要使用" // ",就必须加上一条语句:  from __future__ import division  一看到这句," / "就表示 浮点数除法,返回浮点结果;" // "表示整数除法。  但是,预计在Python3.0发布时,就没有这种折中情况了,," / "就一定表示 浮点数除法,返回浮点结果;" // "表示整数除法。

冉冉说

我这里举个例子就更加有助理解:a=11; b=5;c=0;d=0c=a//b;d=a/bprint c,d #两输出都是2a=11.0;b=5.0;c=0.0;d=0.0c=a//b;d=a/bprint c,d #输出结果是:2.0 ,2.2从上面两个测试结果可看出来,在进行整数运算时两种运算符没差;在进行浮点运算时,// 取小数点前的值(但是其类型还是浮点型),/ 就是现实中带小数的运算啦。动动手测试一下就能够很好的理解了!我是用python2.7进行测试。
随时随地看视频慕课网APP

相关分类

Python
我要回答