Python 函数调用缺少必需的位置参数:
我正在为课堂制作一个餐馆标签程序,老师让我们从原来的“模块化”它。然而,我不断地得到错误 TypeError:computeTotal缺少1个必需的位置参数:“饮料” 我知道这是一个范围错误,但我不确定如何修复它,因为该变量是一个全局变量Python 函数调用缺少必需的位置参数:,python,python-3.x,variables,scope,Python,Python 3.x,Variables,Scope,我正在为课堂制作一个餐馆标签程序,老师让我们从原来的“模块化”它。然而,我不断地得到错误 TypeError:computeTotal缺少1个必需的位置参数:“饮料” 我知道这是一个范围错误,但我不确定如何修复它,因为该变量是一个全局变量 def getdrinks(): drinks = float(input('dollar amount for drinks: $')) return drinks def getapps(): apps = float(input
def getdrinks():
drinks = float(input('dollar amount for drinks: $'))
return drinks
def getapps():
apps = float(input('dollar amount for apps: $'))
return apps
def getMC():
mainCourse = float(input('dollar amount for main course: $'))
return mainCourse
def getdessert():
dessert = float(input('dollar amount for desserts: $'))
return dessert
def getPurchaseAmts():
getdrinks()
getapps()
getMC()
getdessert()
getPurchaseAmts()
def computeTotal(drinks, apps, mainCourse, dessert):
Total = (drinks + apps + mainCourse + dessert)
print ("Bill total (before tax and preTip): ",Total)
computeTotal()
drinks = getdrinks()
apps = getapps()
mainCourse = getMC()
dessert = getdessert()
您将参数与外部定义的值混淆 这些参数可以被命名为完全不同的东西,尽管它们当前与其他参数相同,但这并不意味着它们的值会自动传递到函数中 比如说,
def computeTotal(a, b, c, d):
total = (a + b + c + d)
print ("Bill total (before tax and preTip): ",total)
drinks = getdrinks()
apps = getapps()
mainCourse = getMC()
dessert = getdessert()
# this must be last, and you need to pass values into the function
computeTotal(drinks, apps, mainCourse, dessert)
您可以删除getPurchaseAmts,因为它除了让您重复输入两次之外什么都不做请不要发布代码的图像,更糟糕的是,不要发布图像链接。然后将问题复制并粘贴到其中。另外,标记一种语言:。很抱歉,我已经更改了它。您为方法def computeTotal定义了多少个参数?你总共给了多少?现在,请重新阅读您的错误。这与范围无关