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

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

本文详细解析 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 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。