鱼C论坛

 找回密码
 立即注册
查看: 77|回复: 3

小问题

[复制链接]
发表于 2025-1-28 11:10:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
这里表述不太准确吧,应该是向下取证而不是舍弃小数部分,而且整形是没有小数部分的
python第二版22页
IMG_20250128_110910.jpg
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2025-1-28 11:10:32 | 显示全部楼层
这个问题确实值得讨论!

在Python中,对于使用 `int()` 来转换浮点数为整数的情况,确实是将数字向下取整(即取值不大于原数的最大整数)。而你所说的“舍弃小数部分”这种描述容易引起误解,因为看似结果相同,但过程和方式有所不同。

例如:
print(int(3.9))  # 输出:3
print(int(-3.9)) # 输出:-3

这里可以看出,`int()` 的行为是直接舍弃小数部分,但它的效果等价于向零方向取整,而不是数学意义的向下取整(floor)。

如果希望得到数学意义的向下取整,你可以使用 math.floor() 函数:
import math
print(math.floor(3.9))   # 输出:3
print(math.floor(-3.9))  # 输出:-4

总结:  
整型本身没有小数部分,因此没有“舍弃”的概念;而 `int()` 的表现是直接截断小数部分,相当于向零取整。如果再版出版物时,这个表述确实需要更严谨些。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-1-28 11:44:38 | 显示全部楼层
向下取整就是舍弃小数部分,
整形是没有小数部分,对的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-1-28 15:00:46 | 显示全部楼层
我也感觉有问题,
比如 -3/2=-1.5,如果舍弃小数部分的话就是-1,但向下取整是-2
@小甲鱼的二师兄 @小甲鱼
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-2-5 23:55

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表