issue with positional arguments in pthon : I am having a problem with following block of python. 

    class Person:
	def __init__(self, firstName, lastName, idNumber):
		self.firstName = firstName
		self.lastName = lastName
		self.idNumber = idNumber
	def printPerson(self):
		print("Name:", self.lastName + ",", self.firstName)
		print("ID:", self.idNumber)

    class Student(Person):
        def _init_(self,firstName,lastName,idNum,scores):
            self.scores = scores
            Person.__init__(self, firstName, lastName, idNum)

        def calculate(self):
            s = 0
            for n in self.scores:
                s = s + n
            avg = int(s/len(self.scores))
            if avg >= 90 and avg <= 100:
                return 'O'
            if avg >= 80 and avg <= 90:
                return 'E'
            if avg >= 70 and avg <= 80:
                return 'A'
            if avg >= 55 and avg <= 70:
                return 'P'
            if avg >= 40 and avg <= 55:
                return 'D'
            if avg < 40:
                return 'T'

    line = input().split()
    firstName = line[0]
    lastName = line[1]
    idNum = line[2]
    numScores = int(input()) # not needed for Python
    scores = list( map(int, input().split()) )
    s = Student(firstName, lastName, idNum, scores)
    s.printPerson()
    print("Grade:", s.calculate())

I am getting following error

    Traceback (most recent call last):
    File "solution.py", line 43, in <module>
    s = Student(firstName, lastName, idNum, scores)
    TypeError: __init__() takes 4 positional arguments but 5 were given

can anybody help me with this. I think I gave correct number of arguments while initializing the s object of Students class.