为什么我的函数未正确调用?

时间:2019-11-10 22:19:02

标签: python

我正在编写一个程序,该程序将向某人打个招呼(给定名字),然后问他们工作多少小时以及每小时工资多少。该程序运行,但没有吐出正确的数学值。我正在回答这个问题... you earned<function wage at 0x00EA9540>

我已经尝试过致电付款,但是也没有得到答复。

def greet(greeting):
    name = input("Hi, whats your name?")
    return greeting + name

print(greet ("Hey "))



hourly = input("How much is your hourly wage?")
hours = input("How many hours did you work this week?")


def wage(hourly, hours):
    if hours > 40:
        payment = 40 * hourly
        payment = payment + hourly * (hours-40) * 1.5
        return payment
    else:
            return hours * hourly
print("you earned" + str(wage))

2 个答案:

答案 0 :(得分:1)

您错过了wage函数的参数。

在您的情况下,它仅显示函数wage ...的内存地址。

您需要使用wage函数的正确参数更改打印调用:

print("you earned" + str(wage(hourly, hours)))

答案 1 :(得分:0)

您需要使用以下参数调用wage函数:

 print("you earned" + str(wage(hourly, hours)))

否则,您只是在打印wage函数对象的字符串表示形式,那实际上没有多大意义。