您的位置:首页 > 编程语言 > Python开发

Python2以及Python3中的除法

2017-07-18 16:54 1116 查看

前言

在讨论话题之前,我们先说下程序中除法的三种情况:

1. 传统的除法,我称之为整型地板除。在C、C++、Java中常见,特点是整数相除舍弃小数取整,浮点数相除则保留小数(如果有)。

>>>1/2
0
>>>1.0/2.0
0.5


2. 真实的除法,我称之为精确除法。特点是无论整数还是浮点数,均保留小数(如果有)。

>>>1/2
0.5
>>>1.0/2.0
0.5


3. 只留整数的除法,我称之为完全地板除。特点是无论整数还是浮点数,均不保留小数(如果有)。

>>>1//2
0
>>>1.0//2.0
0.0


好了,介绍完程序的三种除法,现在我们来说说Python中的除法。

Python2

1. python2中的除法与传统语言(c、c++、java)无异,也是整型地板除。

 


2. 也可以进行精确除法,只需要在开头加上 from __future__ import division



3. 也可以进行完全地板除,只需要将 / 替换为 // 即可(这一点在3里也是完全一样的)



Python3

1. Python3与Python2的一个巨大改变就是默认除法由整型地板除变为精确除法。

这导致2的代码在3里,所有整形相除的运算结果都会变化,所以很多人还坚持着2 ?

2. 可以加//实现完全地板除。(和2一样)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: