python取整的几种常见方式-向上取整、向下取整、四舍五入取整、int()取整、“//”整除取整

本文介绍了Python中四种常见的取整方法:math.ceil()用于向上取整,math.floor()用于向下取整,round()进行四舍五入,而int()则进行去尾取整。详细阐述了每个函数的工作原理,并通过实例展示了它们在不同情况下的取整结果。此外,还提到了整除运算符'//'与向下取整的等效性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

python使用中会遇到几种取整的情况,现在整理一下,以供以后学习参考。

一、向上取整,所有小数都是向着数值更大的方向取整,不论正负。

math.ceil()

import math

math.ceil(0.4)
>>> 1

math.ceil(1.8)
>>> 2

math.ceil(-1.8)
>>> -1

二、向下取整,所有小数都是向着数值更小的方向取整,不论正负。

math.floor()

math.floor(1.8)
>>> 1

math.floor(-1.8)
>>> -2

三、四舍五入取整,对于round() 函数来说,当小数末尾为5时,如果前一位为奇数,取整为向绝对值更大的方向取整;当小数末尾的5前一位为偶数时,取整为去尾取整。

round()

round(1.2)
>>> 1

round(1.6)
>>> 2

# 当小数末尾为5时

round(1.5)
>>> 2

round(3.5)
>>> 4

round(-1.5)
>>> -2

# 注意此时

round(2.5)
>>> 2

round(4.5)
>>> 4

round(-2.5)
>>> -2

四、还有一种就int()  在格式转换时也经常用到,但int()取整为去尾取整,即不管小数后为多少,全部去掉,取整的方向总是让结果的绝对值比小数的绝对值更小。

int(-0.4)
>>> 0

int(-1.6)
>>> -1

int(0.7)
>>> 0

int(2.6)
>>> 2

五、还有一种 较为特殊的 “//”  整除运算符,其结果与向下取整相同。

9//2
>>> 4

9//4
>>> 2

9//5
>>> 1

Python中,有几种方法可以进行四舍五入取整操作。一种方法是使用round函数,该函数可以将一个数值四舍五入到指定的小数位数。例如,如果要将一个数值a保留b位小数并进行四舍五入,可以使用以下代码: a = float(input('输入数值:')) b = int(input("要保留几位小数:")) a = round(a, b) print(a) \[1\] 另一种方法是通过给小数加上0.5来判断是否大于1,然后将其转换为整数。这种方法可以使用以下代码实现: num = float(input('输入数值:')) num += 0.5 num = int(num) print(num) \[2\] 还有一种方法是使用math模块中的ceil和floor函数来实现向上取整向下取整。ceil函数可以将一个数值向上取整,而floor函数可以将一个数值向下取整。如果要将一个数值向下取整,也可以使用int函数。以下是使用math模块进行取整操作的示例代码: import math print(math.ceil(1.123)) # 向上取整 print(math.floor(1.123)) # 向下取整 print(int(1.123)) # 向下取整 \[3\] 这些方法可以根据具体的需求选择使用,根据输入的数值和要求的精度,选择合适的方法进行四舍五入取整操作。 #### 引用[.reference_title] - *1* *2* [python中整数四舍五入的方法](https://blog.csdn.net/zouzxxi/article/details/123894139)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [python 实现四舍五入向上取整向下取整](https://blog.csdn.net/qq_38120851/article/details/125844348)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旋转小马

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值