提示计算器返回零

时间:2016-08-23 14:03:34

标签: python

我在运行我写的代码时遇到了一些麻烦。

meal = float(raw_input("How much did your meal cost? "))

tax = 6.75 / 100
tip = 15 / 100

total = (meal * tax) * tip

print total

你可以在上面看到我做了这个"小费计算器"。每当我输入一个数字时,它都会返回零。好像它正在跳过整个计算部分。

任何解决方案?

3 个答案:

答案 0 :(得分:3)

如果它是python 2.7你正在进行整数除法,这意味着你的小费计算为15/100 = 0.

from __future__ import division

在程序的顶部将解决此问题。

答案 1 :(得分:1)

在python 2中,/是整数除法。因此,15/100 = 0,你就这么多了。只需用15.0替换15

答案 2 :(得分:0)

问题在于这一行:

tip = 15 / 100

int除以int会产生int。在这种情况下,15 / 100会为您提供0,而互补的模运算15 % 100会提供15个余数。

如果您将15更改为float,那么它将有效,因为精度得以保留,而tip将是float而不是int。尝试:

tip = 15.0 / 100