为了账号安全,请及时绑定邮箱和手机立即绑定

为什么这个部门在Python中不起作用?

为什么这个部门在Python中不起作用?

慕妹3146593 2019-08-28 15:16:35
为什么这个部门在Python中不起作用?考虑:>>> numerator = 29>>> denom = 1009>>> print str(float(numerator/denom)) 0.0如何让它返回小数?
查看完整描述

3 回答

?
牧羊人nacy

TA贡献1862条经验 获得超7个赞

在版本3之前,Python的除法运算符/在表示两个整数参数时表现得像C的除法运算符:它返回一个整数结果,当存在小数部分时,它会被截断。

>>> n = 29

>>> d = 1009

>>> print str(float(n)/d)

0.0287413280476

在Python 2(可能更早)中,您可以使用:


>>> from __future__ import division

>>> n/d

0.028741328047571853


查看完整回答
反对 回复 2019-08-28
?
jeck猫

TA贡献1909条经验 获得超7个赞

在Python 2.x中,除法与C语言类似:如果两个参数都是整数,则结果被截断为整数,因此浮点数为0.0时,29/1009为0。要修复它,在分割之前施放到浮子:

print str(float(numerator)/denominator)

在Python 3.x中,除法行为更自然,因此您将获得正确的数学结果(在浮点错误内)。


查看完整回答
反对 回复 2019-08-28
?
湖上湖

TA贡献2003条经验 获得超2个赞

在您的评估中,您正在转换结果,您需要转换操作数。


查看完整回答
反对 回复 2019-08-28
  • 3 回答
  • 0 关注
  • 486 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信