Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python中的提示计算器_Python_Python 3.x - Fatal编程技术网

Python中的提示计算器

Python中的提示计算器,python,python-3.x,Python,Python 3.x,答案应该是15,但上面给出的是12.0。不知道为什么。 当我尝试打印tip_%时,它给出了0.0 小费百分比计算如下: def solve(meal_cost, tip_percent, tax_percent): tip_percent=float(meal_cost * (tip_percent / 100)) tax_percent=float(meal_cost * (tax_percent / 100)) total_cost=meal_cost + tip_p

答案应该是15,但上面给出的是12.0。不知道为什么。 当我尝试打印tip_%时,它给出了0.0

小费百分比计算如下:

def solve(meal_cost, tip_percent, tax_percent):
    tip_percent=float(meal_cost * (tip_percent / 100))
    tax_percent=float(meal_cost * (tax_percent / 100))
    total_cost=meal_cost + tip_percent + tax_percent
    return (total_cost)
print(solve(12, 20, 8))

我正在开始学习Python

您的结果与使用Python 2的结果一致。在Python 2中,如果要除法的数字是整数,则
/
是整数除法。要强制浮点数学将
100
更改为
100.0

float(meal_cost * (tip_percent / 100))
或者改为使用Python 3

结果:
这是因为您正在使用Python2进行测试,它返回12.0。 在Python3中,相同的代码将返回15.36

原因是Python改变了在Python3中处理除法的方式

例如:
3/2=1(在Python 2.7.6中)
3/2=1.5(在Python 3.4.1中)

将其除以100.0(而不是除以100)。

您可以在这里找到的示例:

我得到的代码是15.36。您确定您使用的是python 3吗?
def solve(meal_cost, tip_percent, tax_percent):
    tip_percent=float(meal_cost * (tip_percent / 100.0))
    tax_percent=float(meal_cost * (tax_percent / 100.0))
    total_cost=meal_cost+tip_percent+tax_percent
    return total_cost
print(solve(12,20,8))
15.36