当前位置:  开发笔记 > 编程语言 > 正文

Python数学除法运算返回0

如何解决《Python数学除法运算返回0》经验,为你挑选了1个好方法。

您可以得到答案,0因为您正在使用Python2并执行整数除法.疾病人群不能高于总人口的事实是每个合理输入得到零的原因(除非两个值相同).

两个修复:

def divide(a,b):
    if b == 0:
        # decide for yourself what should happen here
    else:
        return float(a)/b

这将确保您的函数执行浮点除法,而不管您传递给它的数字.第二个修复是你应该raw_input在Python2中使用并将输入转换为数字(float在这里会很好).

a = float(raw_input("Enter value for people with disease: ")) # add error checking as needed
b = float(raw_input("Enter value for total population: " )) # add error checking as needed

问题input()是它等同于eval(raw_input()).



1> timgeb..:

您可以得到答案,0因为您正在使用Python2并执行整数除法.疾病人群不能高于总人口的事实是每个合理输入得到零的原因(除非两个值相同).

两个修复:

def divide(a,b):
    if b == 0:
        # decide for yourself what should happen here
    else:
        return float(a)/b

这将确保您的函数执行浮点除法,而不管您传递给它的数字.第二个修复是你应该raw_input在Python2中使用并将输入转换为数字(float在这里会很好).

a = float(raw_input("Enter value for people with disease: ")) # add error checking as needed
b = float(raw_input("Enter value for total population: " )) # add error checking as needed

问题input()是它等同于eval(raw_input()).

推荐阅读
小色米虫_524
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有