我目前正在学习python,并尝试在pyschools做练习(如果有人知道它是什么的话)。总之,我有一个练习,要求我做以下事情:编写一个percent(value,total)函数,它接受两个数字作为参数,并将百分比值返回为整数。在
我的代码是:
def percent(value, total):
percent = value / total * 100
return int(percent)
它在我的Python Idle中运行得很好,它给出了所有正确的答案。但是,当我在pyschools的网站上运行它时,它会说,例如,当使用参数46和90调用函数时,函数返回0。但是,在我的python idle中,它正确地返回51。 有什么问题吗? 非常感谢你的帮助!在
尝试以下操作:
以确保值和总计都是浮动的。这样就可以传递字符串,并且仍然可以得到正确的答案。在
在Python2.x中,除法是整数除法,在Python3.x中则不是。这也许能解释你的问题。在
另外,您可以使用括号使代码更具可读性。在
你需要使用浮点除法。在
在你的情况下,你可以运用这个小技巧:
当其中一个因素是浮动时,操作会给你浮动。你不需要全部转换。 注意这不起作用:
^{pr2}$因为第一个操作是在整数模式下执行的
(顺便说一句,别忘了把百分比转换成整数,以符合学校的要求。我不是为了清楚起见才这么做的)
相关问题 更多 >
编程相关推荐