我是Python新手!完成了我的学习,读了几本书,现在正在尝试pyschools的挑战。成功地完成了变量和数据类型,但是主题2(函数)中的第7个问题让我很难受。在
我在Python(3.2版)中使用Eclipse。在我的日食中,我得到了答案100,51和525。这些都是pyschools期望的答案,但它显示我的函数返回100、0和500。在
问题在这里(希望我可以把它贴在这里!):
编写一个函数percent(value,total),它接受两个数字作为参数,并将百分比值返回为整数。
下面是我的功能
def percent (value, total):
a = value
b = total
return(int((a / b) * 100))
percent(70, 70)
percent(46, 90)
percent(63, 12)
有谁能告诉我皮校到底想让我做什么,或者哪里出了问题?在
谢谢!在
因为它使用的是python2.x,所以至少需要将一个值转换为float
这会很好的
Python使用严格的整数数学对整数执行数学运算,截断小数部分。在
为了避免这种情况,在除法之前将其中一个输入乘以1.0。在
您使用的是python3.x,而他们使用的是python2.x。在python2.x中,
/
操作始终是整数除法。1/2
是0
。因此,使用float()
将其中一个参数更改为浮点数,例如int((float(a) / b) * 100)
。那么a/b
将有一个小数部分。在或者,假设他们使用的是Python 2.x的最新版本,您可以在脚本的开头添加以下内容,它应该可以在网站上运行:
另外,为什么要给变量分配输入参数?它们已经是变数了。如果您希望它们命名为
^{pr2}$a
和b
,那么只需这样接收它们:相关问题 更多 >
编程相关推荐