I’m getting this error:
TypeError: employee.__init__() takes 4 positional arguments but 5 were given
Here’s the code:
class employee:
raiseAmount = 1.04
numEmpls = 0
def __init__(self, firstName1, lastName, pay):
self.first = firstName1
self.last = lastName
self.pay = pay
self.email = firstName1 + lastName + "@gmail.com"
employee.numEmpls += 1
def fullName(self):
return (self.first + self.last)
def applyRaise(self):
self.pay = int(self.pay * self.raiseAmount)
class developer(employee):
raiseAmount = 2.0
def __intit__(self, firstName, lastName, pay, progLang):
super().__init__(firstName, lastName, pay)
self.lang = progLang
dev1 = developer("jon", "doe", 75000, "python")
dev2 = developer("test", "user", 55000, "c")
I’ve tried using an alternate way:
employee.__init__(self, firstName, lastName, pay)
but this too isn’t working.
New contributor
Mike Rapson is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
1