欢迎光临杨雨的个人博客站!

杨雨个人网站-杨雨个人博客-杨照佳

杨雨个人博客网站

关注互联网和搜索引擎的个人博客网站

首页 > WEB开发 > Python教程 >

python2和3中除法的区别

发布时间:2019-06-24  编辑:杨雨个人博客网站   点击:   

python2中的除法,即一个整数(无小数部分的数)被另外一个整数除,计算结果的小数部分被截除了,只留下了整数部分。有时候,这个功能比较有用,譬如在做一些需要取位数上的值时可以利用此特性用于循环结束等,但通常,大家用不到这种。

python2和3中除法的区别

>>>1/2
0

那么,有两种解决方式:

1)用实数(包含小数点的数)而不是整数进行运算

实数在Python中被称为浮点数(Float,或者Float-point number),只要参与运算的数字中有一个是浮点数,则为浮点数运算,运算结果亦为浮点数,也就不会截除小数部分。

>>>1.0/2.0
0.5
>>>1/2.0
0.5
>>>1.2/2
0.5
>>>1/2.
0.5

2)让Python改变除法的默认执行方式

可以在程序中加入以下语句,或者在解释器里执行它:

>>>from_future_import division

还有另外一种方法,如果通过命令行(如在Linux系统上)运行Python,可以使用命令开关啊-Qnew

使用以上两种方法。就可以只执行普通的除法运算。

>>>1/2
0.5

此时,单斜线就不再作为整除了,但是Python提供了另外一个用于实现整除的操作符--双斜线:

>>>1//2
0

就算是浮点数,双斜线也会执行整除

>>>1.0/2.0
0

Pytho3.0之后的版本中

在Python3.0中变成真除法(无论任何类型都会保持小数部分,即使整除也会表示为浮点数形式)。

>>> 3/2
1.5
>>> 3/2.0
1.5
>>> 4/2
2.0
>>> 4/2.0
2.0

注意:

大家一定要注意python3中的除法,结果是一个小数,这一点需要注意。 本文地址:http://itbyc.com/Python/21928.html
转载请注明出处。

分享是一种快乐,也是一种美德:
博客首页 | WEB开发 | 网站运营 | CMS使用教程 滇ICP备14002061号-1