Python3 除法运算符与小数处理详解

山间有风
山间有风
发布时间:2026-10-14 | 1人浏览过
原创

本文详细解析 Python3 中的两种除法运算符:/(真除法)与 //(地板除法),说明其对不同数据类型返回结果的影响。同时介绍 floor、trunc 和 round 三种小数处理方式的差异与适用场景,并对比 Python2 与 Python3 在除法行为上的关键变化,帮助开发者准确掌握数值计算细节。

运行环境为 Python3.6.1。

一、Python3 中的除法运算

在 Python3 的算术表达式中,除法操作提供两种不同的运算符:/ 和 //。这两种运算符在处理不同类型的数据时会产生不同的结果,下文将逐一详细说明。

1、/ 操作符(真除法)

在 Python3 中,使用 / 操作符进行除法运算时,始终执行真除法(True Division)。无论参与运算的操作数是整数还是浮点数,最终结果都会保留小数部分,返回一个浮点型数值。


print(4/2) # 2.0
print(4/2.0) # 2.0
print(5/2) # 2.5

2、// 操作符(地板除法)

在 Python3 中,// 操作符始终执行地板除法(Floor Division)。其结果取决于操作数的类型:如果参与运算的操作数中包含浮点数,则结果保留小数部分;若全部为整数,则结果为整数。


print(4//2.0) # 2.0
print(4//2) # 2
print(5//2) # 2

二、小数的不同显示方式

Python 提供了多种处理小数显示的方式,主要包括 floor、trunc 和 round。

floor:将小数向下截断至其下方的最大整数,即返回小于或等于该小数的最大整数值。该方法对负数同样有效,例如 -2.5 会截断为 -3。


import math
print(math.floor(2.5)) # 2
print(math.floor(-2.5)) # -3

trunc:执行真正的截断操作,直接去除小数部分。当处理正数时,其效果与 floor 相同;但在处理负数时,trunc 会向零方向截断,与 floor 的行为不同。


import math
print(math.trunc(2.5)) # 2
print(math.trunc(-2.5)) # -2

round:对小数进行格式化舍入,类似于小学数学中的四舍五入。round 是 Python 的内置函数,无需额外导入模块即可直接使用。


print(round(2.567)) # 3
print(round(2.467)) # 2
print(round(2.567, 2)) # 2.57

补充:Python2 与 Python3 的除法差异


python2:5/3=1 【向下取整-除】
python3:5/3=1.6666666666666667【精确—除】
 
python2:5//3=1 【向下取整-除】
python3:5//3=1 【向下取整-除】

以上为个人经验分享,希望能为大家提供参考。如有错误或未考虑周全之处,欢迎指正。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表