Вы путаете параметры с внешне определенными значениями.
Эти параметры могут быть названы совершенно разными вещами, и хотя они в настоящее время совпадают с другими, это не означает, что их значения автоматически передаютсяв функцию
Например,
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()
, потому что он ничего не делает, но заставляет вас повторить ввод дважды