对不起,可能是一个愚蠢的问题,但我是非常非常新的python和创建我的第一个类之一。但它给错误,我有点无知。下面是代码Python class给出错误Traceback
class Student:
studentCount = 0
averageGPA = 0
def __init__(self, studentID, studentName, studentGPA):
self.studentID = studentID
self.studentName = studentName
self.studentGPA = studentGPA
Student.studentCount += 1
Student.averageGPA += 3
def displayCount(self):
print ("Total Students %d" % Student.studentCount)
def displayStudent(self):
print ("ID : ", self.studentID, ", Name : ", self.studentName, ", GPA : ", self.studentGPA)
def averageGPA(self):
print("Average GPA is : %d" % Student.averageGPA/Student.studentCount)
def main():
student1 = Student("54466","Zara", 3)
student2 = Student("48887","Manni", 4)
student3 = Student("41187","Sam", 3)
student1.displayStudent()
student2.displayStudent()
print ("Total Students %d" % Student.studentCount)
print ("Student's average GPA %d" % Student.averageGPA)
main()
,它是给错误是
Traceback (most recent call last):
File "Z:/CS 120/lab7_2.py", line 29, in <module>
main()
File "Z:/CS 120/lab7_2.py", line 21, in main
student1 = Student("54466","Zara", 3)
File "Z:/CS 120/lab7_2.py", line 10, in __init__
Student.averageGPA += 3
TypeError: unsupported operand type(s) for +=: 'function' and 'int'
请帮我解决这个问题。再次抱歉,如果这个问题听起来很愚蠢,因为我很新!
你逝去的GPA作为字符串=有没有理由这样做呢? – 2014-12-01 17:10:33
以及它的一个数字,所以可以通过int也。请参阅编辑 – Gavin 2014-12-01 17:11:36
'averageGPA'是一个函数,而不是一个字符串,所以您不能将'studentGPA'添加到它。 – Kevin 2014-12-01 17:11:42