从另一个函数调用函数进行计算(Python)
我的问题是,我试图从另一个函数区域调用函数cost来执行主函数调用返回的所有值。这是作业,我被卡住了。如果我不必从面积函数调用成本函数,只需进行计算,那么这个问题对我来说就容易了从另一个函数调用函数进行计算(Python),python,function,Python,Function,我的问题是,我试图从另一个函数区域调用函数cost来执行主函数调用返回的所有值。这是作业,我被卡住了。如果我不必从面积函数调用成本函数,只需进行计算,那么这个问题对我来说就容易了 import math def cost(price, area): return price / area def area(size): radius = size / 2 area = (radius**2) * math.pi finalprice = cost(pri
import math
def cost(price, area):
return price / area
def area(size):
radius = size / 2
area = (radius**2) * math.pi
finalprice = cost(price, area) / area
return finalprice
def main():
size = int(input("How big is your pizza?: "))
price = float(input("How much does the whole pizza cost?: "))
answer = area(size)
print("${0:0.3f}".format(answer))
main()
您试图使用未在area()函数范围内定义的变量 在area()函数中,我们有未定义的大小和价格。您从main()传入了size变量,但随后将其重命名为diameter,并且不使用此diameter变量 您还应该传递price变量,因为您需要它来进行计算
def area(diameter, price):
radius = diameter / 2
area = (radius**2) * math.pi
finalprice = cost(price, area) / area
return finalprice
此外,在计算最终价格(以及在成本函数中)时,请注意整数除法。。。这可能会导致计算错误。为什么要将面积除以两次?我猜你是在计算比萨饼每平方米的价格吧
def area(diameter, price):
radius = diameter / 2
area = (radius**2) * math.pi
finalprice = cost(price, area) / area
return finalprice
import math
def area(diameter , price):
radius = diameter / 2
area = (radius**2) * math.pi
finalprice = price/ area
return finalprice
def main():
size = int(input("How big is your pizza?: "))
price = float(input("How much does the whole pizza cost?: "))
answer = area(size, price)
print("${0:0.3f}".format(answer))
main()
家庭作业问题通常不会在这里回答,除非你能证明你已经尝试自己解决问题,并且有一个特定的问题(不是“我卡住了”)“价格”没有在区域函数中定义。当你打电话给cost时,你试着使用它。我不是在问答案。我只是想在一些事情上得到一个方向或者一些建议,因为我在这个问题上尽了全力。我不知道为什么当我从面积函数调用代价函数时,它表示形式参数没有定义。你可能知道我是一个程序员新手。谢谢!我把价格包括在我的区域功能中,它起作用了!我也做了%除法而不是/。另外,直径变量是一个输入错误,我纠正了它。它现在起作用了!