Python 蟒蛇3.7“;类型错误:';int';对象不可调用";在类中调用实例时

Python 蟒蛇3.7“;类型错误:';int';对象不可调用";在类中调用实例时,python,typeerror,class-instance-variables,Python,Typeerror,Class Instance Variables,所以我刚刚开始学习python中的面向对象编程。我一直在学习一个教程,当我试图在类中打印位置参数时,总是会遇到一个错误 class Employee: raise_amount = 1.04 def __init__(self, first, last, pay): self.first = first self.last = last self.pay = pay self.email = first + '.'

所以我刚刚开始学习python中的面向对象编程。我一直在学习一个教程,当我试图在类中打印位置参数时,总是会遇到一个错误

class Employee:
    raise_amount = 1.04

    def __init__(self, first, last, pay):
        self.first = first
        self.last = last
        self.pay = pay
        self.email = first + '.' + last + '@liv.ac.uk'

    def fullname(self):
        return '{} {}'.format(self.first, self.last)

    def apply_raise(self):
        return int(self.pay * Employee.raise_amount)


emp_1  = Employee('Lewis', 'Fisher', 50000)
emp_2 = Employee('Joe', 'Bloggs', 40000)


print(emp_1.apply_raise())
print(emp_2.pay())
代码在“print(Employee.pay())”处崩溃,错误如下

TypeError: 'int' object is not callable
对不起,这可能很简单,但我无法让它工作。 提前感谢,
Lewis

您已经在
\uuuu init\uuuu
方法中将
支付定义为一个整数变量。如果你想看到它的价值,只需使用

print(emp_1.pay)

但是没有调用整数这样的东西,所以不能使用
pay()

。pay
是一个
int
,不是一个函数,不需要调用。
pay
是一个数字。通过将
pay()
作为函数调用它。这不是一个函数,所以只需使用
pay
,而不是
pay()
。非常感谢您的解释,非常有用:)。非常感谢您的帮助。:)